import asyncio
import time
async def get_request(url):
print('正在请求的url: ',url)
await asyncio.sleep(2) #支持异步模块代码
print('请求结束: ',url)
return 'hello'
urls = [
'www.1.com',
'www.2.com',
'www.3.com'
]
if __name__ == "__main__":
start = time.time()
tasks = [] #多任务列表
#1.创建协程对象
for url in urls:
#c就是一个协程对象
c = get_request(url)
#创建任务对象,任务对象就是对协程对象进一步封装
task = asyncio.ensure_future(c)
tasks.append(task)
#3.创建事件循环对象
loop = asyncio.get_event_loop()
#将任务对象注册到事件循环中且开启事件循环,必须使用wait方法对tasks进行封装才可
loop.run_until_complete(asyncio.wait(tasks))
print('总耗时: ',time.time()-start)