一个个下载ppt比较麻烦,可以试试使用python爬取很方便 import requests #导入响应模块 import re #导入re模块正则表达式 page=1 #页数 count=1 #已经爬取的数量 while True: if page==1: #假如是第一页则输入下面网站 sy_url = 'https://www.ypppt.com/moban/' else: sy_url = f'https://www.ypppt.com/moban/list-{page}.html'#否则就是这个第几页数的网站 res_sy=requests.get(sy_url) #获取主页网址响应 if res_sy.status_code == 404: break res_sy.encoding = 'utf-8' res_sy.encoding="utf-8" # 格式编码类型用utf-8 gl_1=re.findall('<a href="/article/.*?/(.*?).html"class="img_preview"',res_sy.text)#筛选页面的ppt模板编码 for aid in gl_1: #把对应编码的ppt模板一个一个拿下来 xqy_url = 'https://www.ypppt.com/p/d.php?aid='+aid#对应编码的请求网站 res_mb=requests.get(xqy_url)#获取模板网站的响应 xz_url=re.findall('<li><a href="(.*?)">下载地址1</a></li>',res_mb.text)[0]#过滤下载的网址 filename=re.findall('<title>(.*?) - 下载页</title>',res_mb.text)[0] #筛选名称 if 'pan.baidu' in xz_url: #如果过滤的下载网址里面有pan.baidu就跳过 continue else: #跳过后获取格式 filenametype = xz_url.split('.')[-1] # 获取格式.后面的就是格式 # 下载网址 保存文件 res_ppt=requests.get(xz_url) #获取最终下载的响应 open(f'{filename}.{filenametype}',"wb").write(res_ppt.content) #写入下载进f盘ppt文件 响应带入名称格式 print(xz_url) #打印最终下载的网址 print(f'{filename}.{filenametype} 第{page}页共{count}个模板下载完毕')#打印下载进度 count += 1 #每下载完一个模板就就+1 page+=1 #每下载完一页就+一页翻页
python批量下载ppt
于 2025-01-10 11:04:44 首次发布