变更
This commit is contained in:
@@ -0,0 +1,33 @@
|
||||
import asyncio
|
||||
import aiohttp
|
||||
|
||||
# 案例优美图库
|
||||
|
||||
urls = [
|
||||
'http://kr.shanghai-jiuxin.com/file/bizhi/20220927/vif3daynop3.jpg',
|
||||
'http://kr.shanghai-jiuxin.com/file/bizhi/20220927/0yrighfazhu.jpg',
|
||||
'http://kr.shanghai-jiuxin.com/file/bizhi/20220927/rggtiwgnyzj.jpg'
|
||||
]
|
||||
|
||||
|
||||
async def aiodownload(url):
|
||||
# 发送请求、得到图片内容、保存图片
|
||||
# s = aiohttp.ClientSession()# 等价于request模块
|
||||
name = url.rsplit('/', 1)[1]
|
||||
async with aiohttp.ClientSession() as session:
|
||||
async with session.get(url) as r:
|
||||
# 请求完,写入文件
|
||||
with open(name, mode='wb') as f:
|
||||
t = await r.content.read()
|
||||
f.write(t) # 读取是异步的,需要await
|
||||
|
||||
|
||||
async def main():
|
||||
tasks = []
|
||||
for url in urls:
|
||||
tasks.append(aiodownload(url))
|
||||
|
||||
await asyncio.wait(tasks)
|
||||
|
||||
if __name__ == '__main__':
|
||||
asyncio.run(main())
|
||||
Reference in New Issue
Block a user