25

これを実行すると:

import urllib

feed = urllib.urlopen("http://www.yahoo.com")

print feed

インタラクティブウィンドウ(PythonWin)でこの出力を取得します。

<addinfourl at 48213968 whose fp = <socket._fileobject object at 0x02E14070>>

上記のURLのソースを取得することを期待しています。これは他のコンピューター(学校のコンピューターなど)でも機能することはわかっていますが、これは私のラップトップにあり、ここで何が問題なのかわかりません。また、私はこのエラーをまったく理解していません。どういう意味ですか?Addinfourl?fp?助けてください。

4

3 に答える 3

55

これを試して:

print feed.read()

こちらのPythonドキュメントを参照してください。

于 2009-03-01T20:00:08.600 に答える
17

urllib.urlopenは実際にはファイルのようなオブジェクトを返すため、コンテンツを取得するには次のものを使用する必要があります。

import urllib

feed = urllib.urlopen("http://www.yahoo.com")

print feed.read()
于 2009-03-01T20:00:35.120 に答える
7

Python 3.0の場合:

import urllib
import urllib.request

fh = urllib.request.urlopen(url)
html = fh.read().decode("iso-8859-1")
fh.close()

print (html)
于 2009-03-01T22:11:58.830 に答える