自省

async def download_one(url):  # url:ts文件的下载路径
# 自省 报错了,没关系,还可以正常启动起来 while 1: (for i in range(10):) try: break except:
for i in range(10): # 如果10次都不行,可能是url有问题,或者服务器挂了
try:
file_name = url.split("/")[-1]
async with aiohttp.ClientSession() as session:
async with session.get(url, timeout=30) as resp:
content = await resp.content.read()
# 先手动创建个目录,名为 电影_源_加密后
async with aiofiles.open(f"./电影_源_加密后/{file_name}", mode="wb") as f:
await f.write(content)
print(url, "下载成功!!!")
break
except: # 里面可以什么都不写
print("下载失败,出现错误", url)
await asyncio.sleep((i+1)*5) # 为了爬取的成功率,可以适当的进行睡眠
posted @ 2023-08-03 22:35  严永富  阅读(10)  评论(0)    收藏  举报