Я делаю скрипт на 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, но прежде чем идти дальше, я хочу убедиться, что я не делаю здесь что-то сомнительное.
Заранее спасибо. Приветствия.