asyncdeffunc(session, url): print('发送请求:', url) asyncwith session.get(url) as response: text = await response.text() print('得到结果:', url, len(text)) print('-'*100)
asyncdefmain(data): asyncwith aiohttp.ClientSession() as session: tasks = [asyncio.create_task(func(session, url)) for url in data] await asyncio.wait(tasks)
if __name__ == '__main__': a = ['https://www.biqusa.com/143_143300/', 'https://www.biqusa.com/143_143386/', 'https://www.biqusa.com/143_143694/', 'https://www.biqusa.com/42_42546/', 'https://www.biqusa.com/143_143728/']
asyncio.run(main(a))
异步协程和不支持协程的模块 - requests:
import aiohttp import asyncio
asyncdeffunc(session, url): print('发送请求:', url) asyncwith session.get(url) as response: text = await response.text() print('得到结果:', url, len(text)) print('-'*100)
asyncdefmain(data): asyncwith aiohttp.ClientSession() as session: tasks = [asyncio.create_task(func(session, url)) for url in data] await asyncio.wait(tasks)
if __name__ == '__main__': a = ['https://www.biqusa.com/143_143300/', 'https://www.biqusa.com/143_143386/', 'https://www.biqusa.com/143_143694/', 'https://www.biqusa.com/42_42546/', 'https://www.biqusa.com/143_143806/', 'https://www.biqusa.com/143_143728/']