Ошибка Python при использовании urllib.open

Когда я запускаю это:

import urllib

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

print feed

Я получаю этот вывод в интерактивном окне (PythonWin):

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

Я ожидаю получить источник указанного выше URL. Я знаю, что это работало на других компьютерах (например, в школе), но это на моем ноутбуке, и я не уверен, в чем проблема. Кроме того, я вообще не понимаю эту ошибку. Что это значит? Addinfourl? фп? Пожалуйста помоги.

Ответов (3)

Попробуй это:

print feed.read()

См. Документацию Python здесь .

urllib.urlopen на самом деле возвращает объект в виде файла, поэтому для получения содержимого вам нужно будет использовать:

import urllib

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

print feed.read()

В Python 3.0:

import urllib
import urllib.request

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

print (html)