Python 网络请求与加密技术全解析
1. 异步 HTTP 请求优化
在进行 HTTP 请求时,若要充分利用异步特性,不能简单地在每行使用 await ,否则可能仍需较长时间。例如,若有两个请求,每个请求延迟 3 秒,简单使用 await 会让总时间达到 6 秒。为了优化,我们可以将发起请求和等待响应分开。
import asyncio
import httpx
async def main():
async_client = httpx.AsyncClient()
fut1 = async_client.get("https://httpbin.org/delay/3?param=async-first")
fut2 = async_client.get("https://httpbin.org/delay/3?param=async-second")
responses = await asyncio.gather(fut1, fut2)
return responses
loop = asyncio.get_event_loop()
results = loop.run_until_complete(main())
print(results)
通过 await asyncio.gather() 可以让两个请求无延迟地同时启动,从而提高效率。
HTTP 无处不在,从用户可访问的服务到面向 Web 的 API,甚至在许多微服务架构内部都有广泛应
Python网络请求与加密技术解析
超级会员免费看
订阅专栏 解锁全文
1821

被折叠的 条评论
为什么被折叠?



