Python请求lib的时间比应该获取请求的时间长

时间:2017-12-30 03:26:53

标签: python python-3.x get python-requests

所以我有这个代码。每当我运行代码并且它到达第3行时,执行get请求大约需要20秒。它没有理由花这么长时间,并且每次都持续很长时间。有什么帮助吗?

def get_balance(addr):
try:
    r = requests.get("http://blockexplorer.com/api/addr/"+addr+"/balance")
    return int(r.text)/10000000
except:
    return "e"

1 个答案:

答案 0 :(得分:2)

它大部分时间都适合我。

>>> def get_balance(addr):
...   try:
...       start = time.time()
...       r = requests.get("http://blockexplorer.com/api/addr/"+addr+"/balance")
...       end = time.time()
...       print(f"took {end - start} seconds")
...       print(r.text, "satoshis")
...       return int(r.text)/100000000
...   except:
...       return "e"
...
>>>
>>> get_balance("1HB5XMLmzFVj8ALj6mfBsbifRoD4miY36v")
took 0.7754228115081787 seconds
151881086 satoshis
15.1881086

但是,如果我连续做足够多次,我偶尔会收到错误“比特币JSON-RPC:超出工作队列深度。代码:429”

像我一样打印出r.text文件,这可能会显示来自Block Explorer的错误消息。可能是他们开始对你进行限速。