我在Windows 7上安装了Python 2.7.10.Urllib在IDLE shell中运行没有问题,但是当我从文件中运行完全相同的代码时,或者从python urltest.py
我的代码:
import urllib
page = urllib.urlopen("http://www.google.com")
contents = page.read()
print contents
我收到以下错误:
page = urllib.urlopen("http://www.google.com")
AttributeError: 'module' object has no attribute 'urlopen'
请记住,这个确切的代码适用于IDLE shell(shell,而不是编辑器)
答案 0 :(得分:2)
我建议你的默认Python是版本3,不再有urllib.urlopen(它使用urllib.request.urlopen)。
IDLE很可能使用2.7。
答案 1 :(得分:0)
#python3
import urllib.request
page = urllib.request.urlopen("http://www.google.com")
该错误即将到来,因为当您运行python file_name.py
时,它正在调用python3。输入python2 file_name.py
,它将起作用。
# python2
import urllib
page = urllib.request.urlopen("http://www.google.com")