aiohttp请求

#环境安装: pip install aiohttp
#使用该模块中的ClientSession
import requests
import asyncio
import aiohttp
import time
star=time.time()
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)
async with aiohttp.ClientSession() as sesson:
async with await sesson.get(url) as respons:
#get(),post():
#headers,params/data,proxy=‘http://ip:port‘重点这里变成了字符串
#text()返回的是字符串形式的响应数据
#read()返回的二进制形式的响应数据
#json返回的是json对象
#获取响应数据操作之前一定要使用await进行手动挂起
page_text = await respons.text()
print(page_text)

#rewuests.get 是基于同步,必须使用基于异步的网络模块进行指定的url的请求
#aiohttp:基于异步网络请求的模块
# respon=requests.get(url).text
print(‘下载完毕:‘,url)
tasks=[]
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-star)

 

aiohttp请求

上一篇:玩玩微信公众号Java版之六:微信网页授权


下一篇:3.24jsp