#python #api #amazon-web-services #bottlenose
#python #API #amazon-веб-сервисы #bottlenose
Вопрос:
После установки bottlenose и получения моих ключей API и ассоциированных тегов я попытался следовать инструкциям в этом руководстве: https://github.com/lionheart/bottlenose
(Я удалил свои ключи api)
Это ошибка, которую я получаю:
>>> import bottlenose
>>> amazon = bottlenose.Amazon(AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY, AWS_ASSOCIATE_TAG)
>>> response = amazon.ItemLookup(ItemId="B007OZNUCE")
Traceback (most recent call last):
File "<pyshell#2>", line 1, in <module>
response = amazon.ItemLookup(ItemId="B007OZNUCE")
File "C:UsersWindowsAppDataLocalProgramsPythonPython35libsite-packagesbottlenoseapi.py", line 265, in __call__
{'api_url': api_url, 'cache_url': cache_url})
File "C:UsersWindowsAppDataLocalProgramsPythonPython35libsite-packagesbottlenoseapi.py", line 226, in _call_api
return urllib2.urlopen(api_request, timeout=self.Timeout)
File "C:UsersWindowsAppDataLocalProgramsPythonPython35liburllibrequest.py", line 162, in urlopen
return opener.open(url, data, timeout)
File"C:UsersWindowsAppDataLocalProgramsPythonPython35liburllibrequest.py", line 471, in open
response = meth(req, response)
File"C:UsersWindowsAppDataLocalProgramsPythonPython35liburllibrequest.py", line 581, in http_response
'http', request, response, code, msg, hdrs)
File"C:UsersWindowsAppDataLocalProgramsPythonPython35liburllibrequest.py", line 509, in error
return self._call_chain(*args)
File"C:UsersWindowsAppDataLocalProgramsPythonPython35liburllibrequest.py", line 443, in _call_chain
result = func(*args)
File"C:UsersWindowsAppDataLocalProgramsPythonPython35liburllibrequest.py", line 589, in http_error_default
raise HTTPError(req.full_url, code, msg, hdrs, fp)
urllib.error.HTTPError: HTTP Error 400: Bad Request
Ответ №1:
Убедитесь, что у вас правильно настроены системные часы.
У меня такая же проблема, и я исправил ее, изменив дату и время на правильные.
Комментарии:
1. Я проверил в Ubuntu время и установил свое местоположение, но никаких изменений не появилось.
Ответ №2:
Вы должны указать значение для ключей
- AWS_ACCESS_KEY_ID
- AWS_SECRET_ACCESS_KEY
- AWS_ASSOCIATE_TAG
Чтобы получить ключи, вы должны зарегистрироваться на AWS
Комментарии:
1. у меня есть эти ключи. Я удалил их, чтобы сделать этот пост. Я не хотел вставлять сюда свои ключи.
2. я попробовал с другим примером. Я не получил никакой ошибки. Пожалуйста, проверьте, присутствует ли идентификатор элемента
3. идентификатор элемента присутствует. Я думаю, что проблема связана с ассоциированным тегом. Как я могу это исправить, если это проблема?
4. В моем случае я проверил три параметра, и они работают хорошо через Интернет с помощью scracthpad (мой код с использованием Ubuntu).