先导包
import requests import asyncio import time
设置开始时间
start=time.time()
通过flask框架怎么搞出来的url不太懂...
urls=[ 'http://127.0.0.1:5000/bobo','http://127.0.0.1:5000/jay','http://127.0.0.1:5000/tom' ]
封装函数
async def get_page(url): print('正在下载',url) #request模块发起的请求是基于同步的,必须使用基于异步的网络请求模块进行知道url的请求发送 #aiohttp:基于异步请求的模块 response=requests.get(url=url) print(response.text)
url访问
for url in urls: c=get_page(url) task=asyncio.ensure_future(c) tasks.append(task) loop=asyncio.get_event_loop() loop.run_until_complete(asyncio.wait(tasks)) end=time.time() print('总耗时',end-start)
这样下来之后会发现.....执行时间还是6s,是同步的。
原因是
request模块发起的请求是基于同步的,必须使用基于异步的网络请求模块进行知道url的请求发送 aiohttp:基于异步请求的模块
这样就引入了aiohttp模块