python3的urllib以及urllib2的报错问题

1.python

urllib.urlencode(params)post

换成学习

urllib.parse.urlencode(params)url

2.code

在python3.3后urllib2已经不能再用,只能用urllib.request来代替
response=urllib2.urlopen('
  File "b.py", line 1, in <module>
ImportError: No module named 'urllib2'

将urllib2给改成urllib.request便可正常运行
import urllib.request
print(urllib.request.__file__)

3.教程

 

在学习爬虫的时候,用到postdata时,遇到了一个问题:it

POST data should be bytes or an iterable of bytesclass

一开始觉得是本身代码写的有问题,对照着教程和本身的代码,又没有错误。import

在网上查了一下,能够用下面的一个语句解决。module

data = urllib.parse.urlencode(values).encode(encoding='UTF8')
相关文章
相关标签/搜索