Я пытаюсь реализовать в Python простую программу, которая читает веб-страницы и записывает их в файлы. Приблизительно 2000 страниц сообщений пронумерованы, но некоторые цифры отсутствуют.
Веб-сайт защищен именем пользователя и паролем, и я использую то же имя пользователя и пароль, которые я обычно использую для доступа к нему вручную. Я использую некоторые примеры кода с обработкой файлов cookie, которые я нашел на официальном веб-сайте Python, но когда я их пробую, я пытаюсь скопировать ответы
"Ваш браузер не принимает наши файлы cookie. Для просмотра этой страницы, пожалуйста, установите настройки браузера для принятия файлов cookie. (Код 0)"
Очевидно, что проблема с файлами cookie, и, возможно, я неправильно обрабатываю имя пользователя и пароль. Любое предложение относительно следующего кода?
import urllib2
import cookielib
import string
import urllib
def cook():
url="http://www.URL.com/message/"
cj = cookielib.LWPCookieJar()
authinfo = urllib2.HTTPBasicAuthHandler()
realm = "http://www.URL.com"
username = "ID"
password = "PSWD"
host = "http://www.URL.com/message/"
authinfo.add_password(realm, host, username, password)
opener = urllib2.build_opener(urllib2.HTTPCookieProcessor(cj), authinfo)
urllib2.install_opener(opener)
# Create request object
txheaders = { 'User-agent' : "Mozilla/4.0 (compatible; MSIE 5.5; Windows NT)" }
try:
req = urllib2.Request(url, None, txheaders)
cj.add_cookie_header(req)
f = urllib2.urlopen(req)
except IOError, e:
print "Failed to open", url
if hasattr(e, 'code'):
print "Error code:", e.code
else:
print f
cook
url="http://www.URL.com/message/"
urllib.urlretrieve(url + '1', 'filename')