Как получить код ответа HTTP для пользовательского поиска Google - service.cse (). Siterestrict (). List - PullRequest
0 голосов
/ 14 июня 2019

У меня есть следующий код,

service = build("customsearch", "v1", developerKey=api_key)
        res = service.cse().siterestrict().list(q=search_term, cx=cse_id, **kwargs).execute()

нужно оценить ответ HTTP (200, 403 и т. Д.) - как мне это получить?

это дает мне статус- есть ли лучший способ?

 print (service._http.connections['https:www.googleapis.com']._HTTPConnection__response.status)

1 Ответ

0 голосов
/ 16 июня 2019

Вот что я сделал -

from googleapiclient.errors import HttpError

try:
   #<logic here>
    except HttpError as err:
        if err.resp.status in [400, 401, 402, 403, 404, 405, 409, 410, 411, 412, \
                                413, 416, 417, 428, 429, 500, 501, 502, 503]
            print(msg + traceback.format_exc())
            print ("from exception"+ str(service._http.connections['https:www.googleapis.com']._HTTPConnection__response.status))

        else: raise 

    except Exception as e:
        print(msg + traceback.format_exc())

Поделитесь, если есть более элегантные решения.

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