Я только начинаю писать Python и столкнулся с проблемой с urllib, который, казалось бы, уникален для Amazon.com.Если я сделаю что-то вроде:
pageIn = urllib.request.urlopen("http://www.google.com")
print(pageIn.read())
Он печатает XML из Google.Если я делаю то же самое, но с любым сайтом от Amazon (домашняя страница, страница конкретного продукта, что угодно), он печатает пустую строку.
Amazon - единственный сайт, для которого я нашел это, и я не понимаю, почему.Любые идеи?
РЕДАКТИРОВАТЬ - РЕШЕНО: Amazon блокировал мой код, потому что он не распознал источник;который по умолчанию является вашим номером версии Python.Изменяя версию в FancyURLopener, я смог заставить Amazon впустить меня. Код ниже теперь работает.
from urllib.request import FancyURLopener
class MyOpener(FancyURLopener):
version = 'Mozilla/5.0 (Windows; U; Windows NT 5.1; it; rv:1.8.1.11) Gecko/20071127 Firefox/2.0.0.11'
myopener = MyOpener()
page = myopener.open('http://www.amazon.com/')
print(page.read())`