报错代码
python3.8,想用urllib库请求访问贴吧,报错代码如下:
def load_page(url,filename):
headers = {"User-Agent":"Mozilla/5.0(compatible;MSIE 9.0;Windows NT 6.1;Trident/5.0;)"}
request = urllib.request.Request(url,headers=headers)
return urllib.request.urlopen(request).read()
报错信息:看到两个request亮着,说明有问题
运行后的报错
报错内容翻译:
属性错误:模块urllib模块没有属性request
报错原因:
Python中出现AttributeError的错误主要有两类原因:
- 1. 没有引入对应正确的包
- 2. 工程目录中存在同名文件
我的代码报错具体原因:查了一下资料是 python3 的 urllib 不会自动导入其under层的包,需要手动导入。
解决方法:
在Python3中手动导入request包,import urllib.request
就解决错误,修改代码:
import urllib.parse
import urllib.request
def load_page(url,filename):
headers = {"User-Agent":"Mozilla/5.0(compatible;MSIE 9.0;Windows NT 6.1;Trident/5.0;)"}
request = urllib.request.Request(url,headers=headers)
return urllib.request.urlopen(request).read()
之前亮着的两个request消失了
运行成功: