IDLE崩溃与url读取

时间:2012-05-21 18:47:16

标签: python python-2.7 python-idle

我正在尝试为我的8年级计算班(12-13岁)创建一个关于字符串操作的课程。我希望他们从网站上抓取文字,并认为使用战争与和平可能很酷。但是,当我尝试读取URL时,IDLE不断崩溃。它在Mac上的终端或PC上的命令行中运行良好(需要5-10秒才能运行),但出于网络安全原因,我的学生无法访问命令行。

我的代码看起来像这样

import urllib2
site = urllib2.urlopen('http://www.gutenberg.org/cache/epub/2600/pg2600.txt')
site.read()

有人有任何建议吗?

4 个答案:

答案 0 :(得分:2)

您是否阅读了有关在OS X下使用IDLE的this page?如果您尚未安装新的Tcl / Tk软件包,则需要先安装。

答案 1 :(得分:1)

我不得不说在8年级教授Python很酷,战争与和平也很酷:)

那个不酷的家伙是IDLE(或者我应该说是Tcl / Tk),它在处理大量文字印刷时会受到影响,战争与和平对他来说太过分了。

尝试限制您打印的文字数量:

>>> import urllib2
>>> site = urllib2.urlopen('http://www.gutenberg.org/cache/epub/2600/pg2600.txt')
>>> site.read()[:1024]

答案 2 :(得分:0)

你可以逐行阅读整个事情,如下所示:

import urllib2

site = urllib2.urlopen('http://www.gutenberg.org/cache/epub/2600/pg2600.txt')
for line in site:
    # print it or do whatever

答案 3 :(得分:0)

在shell中显示长行时IDLE变慢。看一下这个issue

您需要IDLE的Squeezer扩展名。 IdleX项目为IDLE提供了Squeezer以及其他有用的扩展。