异步python request.post()

时间:2018-11-15 11:21:13

标签: python asynchronous python-requests python-asyncio

因此,想法是收集一百万个查询的响应并将其存储在字典中。我希望它是异步的,因为每个查询的request.post占用1秒的时间,并且我想让循环在等待响应时继续进行。经过研究,我有类似的东西。

async def get_response(id):
    query_json = id2json_dict[id]
    response = requests.post('some_url', json = query_json, verify=false)
    return eval(response.text)

async def main(id_list):
    for unique_id in id_list:
        id2response_dict[unique_id] = get_response(unique_id)

我知道这不是异步的,如何在其中使用“等待”使其真正异步?

1 个答案:

答案 0 :(得分:0)

requests-async封装为requests ... https://github.com/encode/requests-async

提供异步支持

要么使用aiohttp