Python Amazon соскоб с использованием заголовков - PullRequest
0 голосов
/ 05 января 2019

Я делаю скрипт на Python для получения информации от Amazon путем анализа HTML-кода страницы. У меня был следующий код, который не будет работать:

import requests
url = "http://www.amazon.com/"
text = requests.get(url)
print(text)

Этот код поднят HTTPError: HTTP Error 503: Service Temporarily Unavailable. Тогда я нашел решение здесь и теперь код выглядит так:

import requests
url = "http://www.amazon.com/"
headers = {'User-Agent': 'Mozilla/5.0 (Windows NT 6.3; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/54.0.2840.71 Safari/537.36'}
text = requests.get(url, headers=headers)
print(text)

который работает. Я понимаю, что цель аргумента header для функции get состоит в том, чтобы Amazon считал, что HTTP-запрос поступает из браузера.

Теперь на мой вопрос - есть ли другой способ получить доступ к Amazon без использования этого (как выглядит) «подвоха»?

Кроме того, "этично" ли это делать? Я пытался использовать этот сценарий для личного использования или для интеграции его в качестве функции в бот Discord, но прежде чем идти дальше, я хочу убедиться, что я не делаю здесь что-то сомнительное.

Заранее спасибо. Приветствия.

1 Ответ

0 голосов
/ 05 января 2019

НЕТ, ЭТО НЕ ЭТИЧНО !!!

  1. , поэтому вы должны упомянуть пользовательский агент в заголовке.
  2. здесь вы можете прочитать, поскольку они четко упоминают это Условия использования Amazon

это упоминается в разделе ДОПОЛНИТЕЛЬНЫЕ УСЛОВИЯ ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ AMAZON

Вы не имеете права включать какую-либо часть Программного обеспечения Amazon в другие программы или компилировать любую его часть в сочетании с другими программами или иным образом копировать (за исключением использования прав, предоставленных в этом разделе), изменять, создавать производные работы, распространять , назначать какие-либо права или лицензировать Программное обеспечение Amazon полностью или частично

  1. Однако вы можете взглянуть на API, предоставляемый Amazon Документация для разработчиков это может помочь вам !!!

  2. Другая причина состоит в том, что такие вещи приводят к нагрузке на серверы, что в некотором роде обходится им без всякой выгоды.

  3. у вас может быть больше вопросов для продолжения, если вы можете прочитать эту ветку , а также для дополнительных запросов

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...