Python читать страницу с URL? Лучшая документация? - PullRequest
1 голос
/ 01 октября 2011

У меня довольно много проблем с документацией Python.Есть ли что-то вроде Mozilla Developer Network для этого?

Я делаю сайт-головоломку Python и мне нужно иметь возможность читать содержимое страницы.Я видел следующее, размещенное на сайте:

import urllib2

urlStr = 'http://www.python.org/'
try:
  fileHandle = urllib2.urlopen(urlStr)
  str1 = fileHandle.read()
  fileHandle.close()
  print ('-'*50)
  print ('HTML code of URL =', urlStr)
  print ('-'*50)
except IOError:
  print ('Cannot open URL %s for reading' % urlStr)
  str1 = 'error!'

print (str1)

Постоянно говорится, что модуля urllib2 нет.

Документация Python гласит

The urllib module has been split into parts and renamed in Python 3.0 to urllib.request, urllib.parse, and urllib.error. The 2to3 tool will automatically adapt imports when converting your sources to 3.0. Also note that the urllib.urlopen() function has been removed in Python 3.0 in favor of urllib2.urlopen().

Я тоже пытался импортировать urllib.request, но он говорит, что urllib 2 определен ... WTF здесь происходит?

Версия 3.2.2

Ответы [ 2 ]

4 голосов
/ 01 октября 2011

Использование urllib.request.open(), как рекомендуется в Погружение в Python 3 ...

Python 3.2.1 (default, Jul 24 2011, 22:21:06) 
[GCC 4.2.1 (Based on Apple Inc. build 5658) (LLVM build 2335.15.00)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> import urllib.request
>>> urlStr = 'http://www.python.org/'
>>> fileHandle = urllib.request.urlopen(urlStr)
>>> print(fileHandle.read()[:100])
b'<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtm'
3 голосов
/ 01 октября 2011

Документация, на которую вы, вероятно, ссылались, была Документация Python 2 для urllib2. Документация, которую вы, вероятно, должны использовать: документация Python 3 для urllib.request.

...