使用urllib.open时出现Python错误

时间:2009-03-01 19:56:55

标签: python urllib

当我运行时:

import urllib

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

print feed

我在交互式窗口(PythonWin)中得到了这个输出:

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

我希望得到上述网址的来源。我知道这可以在其他计算机上工作(比如在学校的计算机),但这是在我的笔记本电脑上,我不知道这里有什么问题。另外,我根本不理解这个错误。这是什么意思? Addinfourl? FP?请帮忙。

3 个答案:

答案 0 :(得分:53)

试试这个:

print feed.read()

请参阅Python文档here

答案 1 :(得分:17)

urllib.urlopen实际上返回一个类似文件的对象,以便检索您需要使用的内容:

import urllib

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

print feed.read()

答案 2 :(得分: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)