2011-03-03 115 views
2

所以我有这样的代码:蟒蛇urllib的错误

def crawl(self, url): 
    data = urllib.request.urlopen(url) 
    print(data) 

但后来当我打电话的功能,它返回

data = urllib.request.urlopen(url) 
AttributeError: 'module' object has no attribute 'request' 

我做了什么错?我已经导入的urllib ..

使用python 3.1.3

回答

8

在python3中,urllib是一个包含三个模块请求,响应和错误的包,用于各自的目的。

每当你在Python2中有import urllibimport urllib2。 与

import urllib.request 
import urllib.response 
import urllib.error 

更换他们的班组长和方法相同。

顺便说一句,使用2to3工具,如果你从python2转换为python3。

2
urllib.request

是一个独立的模块;明确导入它。