python中aiohttp库如何理解

Python (150) 2023-06-05 01:35:44

1、aiohttp是一个基于asyncio模块的异步HTTP客户端/服务端框架。

2、如无需保留请求的对话状态,请求将通过aiohttp.request直接发送回复。

3、aiohttp使用字典、list传递参数或直接通过传递字符串作为参数来传递。

实例

纯文本
复制到剪贴板
在新窗口中打开代码
EnlighterJS 3 Syntax Highlighter
importtime
importasyncio
importaiohttp
asyncdefget_html():
asyncwithaiohttp.request('GET',"https://open.163.com/")asres:
returnawaitres.text()
asyncdefmain():
tasks=[asyncio.ensure_future(get_html())foriinrange(20)]
dones,pendings=awaitasyncio.wait(tasks)
fortaskindones:
print(len(task.result()))
if__name__=='__main__':
start_time=time.perf_counter()
asyncio.run(main())
print("aiohttp异步采集消耗时间为:",time.perf_counter()-start_time)
#aiohttp异步采集消耗时间为:0.275251032
importtime importasyncio importaiohttp asyncdefget_html(): asyncwithaiohttp.request('GET',"https://open.163.com/")asres: returnawaitres.text() asyncdefmain(): tasks=[asyncio.ensure_future(get_html())foriinrange(20)] dones,pendings=awaitasyncio.wait(tasks) fortaskindones: print(len(task.result())) if__name__=='__main__': start_time=time.perf_counter() asyncio.run(main()) print("aiohttp异步采集消耗时间为:",time.perf_counter()-start_time) #aiohttp异步采集消耗时间为:0.275251032
importtime

importasyncio
importaiohttp


asyncdefget_html():
asyncwithaiohttp.request('GET',"https://open.163.com/")asres:
returnawaitres.text()


asyncdefmain():
tasks=[asyncio.ensure_future(get_html())foriinrange(20)]

dones,pendings=awaitasyncio.wait(tasks)
fortaskindones:
print(len(task.result()))


if__name__=='__main__':
start_time=time.perf_counter()
asyncio.run(main())
print("aiohttp异步采集消耗时间为:",time.perf_counter()-start_time)
#aiohttp异步采集消耗时间为:0.275251032

以上就是python中aiohttp库的理解,希望对大家有所帮助。

THE END

发表回复