import aiohttp import asyncio import time
async def fetch(session, url): a_ = time.time() print(f"发送请求: {a_} {url}") async with session.get(url, verify_ssl=False) as response: content = await response.content.read() file_name = url.rsplit('_')[-1] with open(f"/home/x1/图片/{file_name}", 'wb') as file_obj: file_obj.write(content) print(f"下载完成了: {int(time.time() - a_)} {url}")
async def main(): async with aiohttp.ClientSession() as session: url_list = [ 'https://xxx1.jpg', 'https://xxx2.jpg', 'https://xxx3.jpg'] tasks = [asyncio.create_task(fetch(session, url)) for url in url_list] await asyncio.wait(tasks)
if __name__ == '__main__': asyncio.run(main())
|