我是Python新手。我试图将Python 2代码转换为Python 3.在我的旧代码中,我有以下几行:
# Create a cookiejar to store cookie
cj = cookielib.CookieJar()
# Create opener
opener = urllib2.build_opener(urllib2.HTTPCookieProcessor(cj))
opener.addheaders = [('User-agent', 'Mozilla/5.0')]
我已将这些行转换为:
# Create a cookiejar to store cookie
cj = cookielib.CookieJar()
# Create opener
opener = urllib.request.build_opener(urllib.request.HTTPCookieProcessor(cj))
opener.addheaders = [('User-agent', 'Mozilla/5.0')]
我遇到的问题是我一直收到以下错误: NameError:全局名称' cookielib'未定义
我不确定我做错了什么以及如何解决这个问题。有人可以帮帮我吗?非常感谢你。
答案 0 :(得分:1)
您是否使用2to3
工具?另外,使用Python Docs,
注意cookielib模块已在Python中重命名为http.cookiejar 3.将源代码转换为Python 3时,2to3工具将自动调整导入。
看到您的评论后,问题是它是http.cookiejar
而不是http.cookieJar
。
请注意未获取资格的J.
答案 1 :(得分:0)
我想我有解决方案。以下似乎有效: cj = http.cookiejar.CookieJar()
答案 2 :(得分:0)
在{strong> Python 3 中,库cookielib
模块已重命名为http.cookiejar
,请参见https://docs.python.org/2/library/cookielib.html。
您可以使用2to3
工具将源代码转换为Python 3,请参见https://docs.python.org/2/library/2to3.html