python Python3の的urllibでとあるAPIからJSONを取得したいのですが,そのAPIが高频度で502を返すため的urlopen()をリトライする実装を工夫しています.urllib3は

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python Python3の的urllibでとあるAPIからJSONを取得したいのですが,そのAPIが高频度で502を返すため的urlopen()をリトライする実装を工夫しています.urllib3は相关的知识,希望对你有一定的参考价值。

def get_api_response(self, req):
        for i in range(self.maxretry):
            try:
                response = urlopen(req)
                response_read = response.read().decode('utf-8')
                response_json = json.loads(response_read)

            # srastatrepは502: Bad Gatewayが頻発。この場合、urlib.error.HTTPErrorになる。
            except HTTPError as e:
                if i + 1 == self.maxretry:
                    raise
                else:
                    print('Error code: ', e.code)
            except URLError as e:
                print('Reason: ', e.reason)
            else:
                break

        return response_json

以上是关于python Python3の的urllibでとあるAPIからJSONを取得したいのですが,そのAPIが高频度で502を返すため的urlopen()をリトライする実装を工夫しています.urllib3は的主要内容,如果未能解决你的问题,请参考以下文章

python3怎么安装 urllib

python3中urllib2找不到怎么办

python3.5中没有urllib2怎么处理?

python3.4没有 urllib2

python3 urllib学习

Python3的urllib模块的变化和介绍