Как решить проблему с бутылочным носом при получении пустого объекта: ожидаемой строки или байтовоподобного объекта - PullRequest
1 голос
/ 26 марта 2019

Я запускаю свой код на сервере, и соединение с Amazon работает правильно, когда я впервые загружаюсь на сервере, но после некоторых запросов оно постоянно терпит неудачу. Если я перезагружаю сервер, он снова начинает работать, но в той же предыдущей ситуации происходит сбой. Я попытался сменить IP с сервера, чтобы проверить, не заблокирован ли мой IP. Но это был не тот случай. Я не получаю явную ошибку от API, только ошибку пустого объекта, поэтому я не могу понять, как решить проблему.

Вот ошибка:

Traceback (most recent call last):
  File "/usr/local/lib/python3.5/dist-packages/amazon/api.py", line 174, in lookup
    response = self.api.ItemLookup(ResponseGroup=ResponseGroup, **kwargs)
  File "/usr/local/lib/python3.5/dist-packages/bottlenose/api.py", line 274, in __call__
    {'api_url': api_url, 'cache_url': cache_url})
  File "/usr/local/lib/python3.5/dist-packages/bottlenose/api.py", line 235, in _call_api
    return urllib2.urlopen(api_request, timeout=self.Timeout)
  File "/usr/lib/python3.5/urllib/request.py", line 163, in urlopen
    return opener.open(url, data, timeout)
  File "/usr/lib/python3.5/urllib/request.py", line 466, in open
    response = self._open(req, data)
  File "/usr/lib/python3.5/urllib/request.py", line 484, in _open
    '_open', req)
  File "/usr/lib/python3.5/urllib/request.py", line 444, in _call_chain
    result = func(*args)
  File "/usr/lib/python3.5/urllib/request.py", line 1297, in https_open
    context=self._context, check_hostname=self._check_hostname)
  File "/usr/lib/python3.5/urllib/request.py", line 1254, in do_open
    h.request(req.get_method(), req.selector, req.data, headers)
  File "/usr/lib/python3.5/http/client.py", line 1107, in request
    self._send_request(method, url, body, headers)
  File "/usr/lib/python3.5/http/client.py", line 1147, in _send_request
    self.putheader(hdr, value)
  File "/usr/lib/python3.5/http/client.py", line 1083, in putheader
    if _is_illegal_header_value(values[i]):
TypeError: expected string or bytes-like object

Большое спасибо!

...