当前位置: 代码网 > it编程>前端脚本>Python > python中的httpx异步请求

python中的httpx异步请求

2024年07月05日 Python 我要评论
异步支持httpx默认情况下提供标准的同步api,但是如果需要,还可以为你提供异步客户端的选项 。要发出异步请求,你需要一个httpx.asyncclientimport asyncioimport

异步支持

httpx默认情况下提供标准的同步api,但是如果需要,还可以为你提供异步客户端的选项 。

要发出异步请求,你需要一个httpx.asyncclient

import asyncio
import httpx

async def main():
    async with httpx.asyncclient() as client:
        response = await client.get('https://example.org/')

loop = asyncio.get_event_loop()
try:
    loop.run_until_complete(main())
finally:
    loop.close()

发出请求

asyncclient.get(url, ...)
asyncclient.options(url, ...)
asyncclient.head(url, ...)
asyncclient.post(url, ...)
asyncclient.put(url, ...)
asyncclient.patch(url, ...)
asyncclient.delete(url, ...)
asyncclient.request(url, ...)
asyncclient.send(url, ...)

流式响应

response.aread()
response.aiter_bytes()
response.aiter_text()
response.aiter_lines()
response.aiter_raw()

实例

import asyncio
import httpx

async def re():
    async with httpx.asyncclient() as client:
        res = await client.get('https://www.baidu.com')
        print(res.text)
        return res.text

loop = asyncio.get_event_loop()
task = [re(), ] # 把任务放入数组,准备给事件循环器调用
loop.run_until_complete(asyncio.wait(task))
loop.close()

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持代码网。

(0)

相关文章:

版权声明:本文内容由互联网用户贡献,该文观点仅代表作者本人。本站仅提供信息存储服务,不拥有所有权,不承担相关法律责任。 如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 2386932994@qq.com 举报,一经查实将立刻删除。

发表评论

验证码:
Copyright © 2017-2025  代码网 保留所有权利. 粤ICP备2024248653号
站长QQ:2386932994 | 联系邮箱:2386932994@qq.com