python3的urllib以及urllib2的报错问题
Posted Python研究者
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python3的urllib以及urllib2的报错问题相关的知识,希望对你有一定的参考价值。
1.
urllib.urlencode(params)
换成
urllib.parse.urlencode(params)
2.
在python3.3后urllib2已经不能再用,只能用urllib.request来代替
response=urllib2.urlopen(‘
将urllib2给改为urllib.request即可正常运行
File "b.py", line 1, in <module>
ImportError: No module named ‘urllib2‘
将urllib2给改为urllib.request即可正常运行
import urllib.request
print(urllib.request.__file__)
3.
在学习爬虫的时候,用到postdata时,遇到了一个问题:
POST data should be bytes or an iterable of bytes
一开始以为是自己代码写的有问题,对照着教程和自己的代码,又没有错误。
在网上查了一下,可以用下面的一个语句解决。
data = urllib.parse.urlencode(values).encode(encoding=‘UTF8‘)
以上是关于python3的urllib以及urllib2的报错问题的主要内容,如果未能解决你的问题,请参考以下文章
python3.x以上 爬虫 使用问题 urllib(不能使用urllib2)