0

私は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' が定義されていません

何が間違っているのか、これを修正する方法がわかりません。誰か助けてくれませんか?どうもありがとうございました。

4

3 に答える 3

1

2to3ツールは使いましたか?また、Python Docs を使用して、

注 Python 3 では、cookielib モジュールの名前が http.cookiejar に変更されました。2to3 ツールは、ソースを Python 3 に変換するときにインポートを自動的に適応させます。

あなたのコメントを見た後、問題はそれがそうではhttp.cookiejarないということhttp.cookieJarです。

大文字になっていないことに注意してくださいJ.

于 2013-05-31T18:37:24.297 に答える
0

ライブラリcookielibモジュールはPython 3http.cookiejarで名前が変更されました。 https://docs.python.org/2/library/cookielib.htmlを参照してください。

ツールを使用し2to3てソース コードを Python 3 に変換できます。https://docs.python.org/2/library/2to3.htmlを参照してください。

于 2020-01-14T15:30:41.187 に答える