问题描述:
python3.7.8运行报错AttributeError: module 'urllib' has no attribute 'urlencode'(urllib 没有 urlencode 属性的问题)
原因分析:
python2和python3的urllib结构不一样
| python2 | python3 |
| import urllib2 | import urllib.request,urllib.error |
| import urllib | import urllib.request,urllib.error,urllib.parse |
| import urlparse | import urllib.parse |
| import urlopen | import urllib.request.urlopen |
| import urlencode | import urllib.parse.urlencode |
| import urllib.quote | import urllib.request.quote |
| cookielib.CookieJar | http.CookieJar |
| urllib2.Request | urllib.request.Request |
解决方法:
将运行脚本中的str_t = urllib.urlencode(data_base)改为str_t = urllib.parse.urlencode(data_base)
本文详细介绍了在Python3中urllib模块中urlencode函数迁移的方法,由于版本差异,需将urllib.urlencode替换为urllib.parse.urlencode。通过实例和官方文档,解决了因模块结构变化导致的编码问题。
1472

被折叠的 条评论
为什么被折叠?



