私は Python 初心者で、他の人のコードを読んでいます。
urllib.urlopen()
の後に ? が続く必要がありますurllib.close()
。そうしないと、接続がリークしてしまいます。正しいですか?
ベストアンサー1
このclose
メソッドは、結果のurllib.urlopen
、ないあなたが考えているモジュールurllib
自体について(あなたが言及しているようにurllib.close
、それは存在しません)。
最善のアプローチ: x = urllib.urlopen(u)
etc の代わりに以下を使用します:
import contextlib
with contextlib.closing(urllib.urlopen(u)) as x:
...use x at will here...
ステートメントwith
とclosing
コンテキスト マネージャーにより、例外が発生した場合でも適切なクローズが保証されます。