1.导入模块并判断所下载类型PPT是否存在文件夹,若无,新建

import requests
import os
from lxml import etree
path = "e:/中秋节ppt模板"
if not os.path.exists(path):os.mkdir(path)

2.访问基础页面,并且拿到总页数列表,确定该类型文件共有几页

b_url ="http://www.1ppt.com/moban/zhongqiujie/"
headers = {'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/84.0.4147.135 Safari/537.36'
}
response = requests.get(url= b_url, headers=headers)
response.encoding = 'gbk'    #更改解码方式
html = etree.HTML(response.text)
num = html.xpath('//ul[@class="pages"]//a/text()')[-3]

3.循环依次访问每页数据,并获取每个PPT的名称及下载链接

for i in range(1,int(num)+1):url = b_url + f"ppt_zhongqiujie_{i}.html"    response = requests.get(url= url, headers=headers)response.encoding = 'gbk'    #更改解码方式html = etree.HTML(response.text)ppt_name = html.xpath('//ul[@class="tplist"]//img/@alt')ppt_url = html.xpath('//ul[@class="tplist"]//h2/a/@href')ppt_url = ["http://www.1ppt.com"+i for i in ppt_url]dt = dict(zip(ppt_name, ppt_url))    for k, v in dt.items():res = requests.get(url =v,headers =headers)res.encoding = "gbk"html = etree.HTML(res.text)down_url = html.xpath('//ul[@class="downurllist"]//a/@href')[0]print(down_url)resp = requests.get(down_url).content

4.数据存储

 #数据存储houzhui = v.split(".")[-1]path = path + k + '.' + houzhuiprint(path)with open(path, "wb") as f:f.write(resp)print(k,"下载完成")

完整代码展示

import requests
import os
from lxml import etree
path = "e:/中秋节ppt模板"
if not os.path.exists(path):os.mkdir(path)
b_url ="http://www.1ppt.com/moban/zhongqiujie/"
headers = {'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/84.0.4147.135 Safari/537.36'
}
response = requests.get(url= b_url, headers=headers)
response.encoding = 'gbk'    #更改解码方式
html = etree.HTML(response.text)
num = html.xpath('//ul[@class="pages"]//a/text()')[-3]
for i in range(1,int(num)+1):url = b_url + f"ppt_zhongqiujie_{i}.html"    response = requests.get(url= url, headers=headers)response.encoding = 'gbk'    #更改解码方式html = etree.HTML(response.text)ppt_name = html.xpath('//ul[@class="tplist"]//img/@alt')ppt_url = html.xpath('//ul[@class="tplist"]//h2/a/@href')ppt_url = ["http://www.1ppt.com"+i for i in ppt_url]dt = dict(zip(ppt_name, ppt_url))    for k, v in dt.items():res = requests.get(url =v,headers =headers)res.encoding = "gbk"html = etree.HTML(res.text)down_url = html.xpath('//ul[@class="downurllist"]//a/@href')[0]print(down_url)resp = requests.get(down_url).content#数据存储houzhui = v.split(".")[-1]path = path + k + '.' + houzhuiprint(path)with open(path, "wb") as f:f.write(resp)print(k,"下载完成")

批量下载免费PPT模板【另一种智能翻页】相关推荐

  1. 使用python批量下载免费简历模板

    import requests import os import re from lxml import etree# 判断简历文件夹是否存在,不存在创建 if not os.path.exists( ...

  2. 删除网络上下载的PPT模板水印

    转载者: 初一绝对值ppt课件              来源: www.2ppt.cn 网上下载的PPT模板上的水印看似每页都有,其实只要进入母板中删除,所以页大一微积分ppt课件面水印全部消失. ...

  3. 哪里能免费下载动态PPT模板?高端精美动态PPT模板大全免费

    不知道大家有没有此类感觉,就是每次说要做PPT的时候,总有那么一些人不仅做得又快,而且做得还特别好,而自己却是一头雾水,就连找PPT模板都是费好久时间,不过近期遇见很多人问关于动态PPT模板的事情,都 ...

  4. 免费PPT模板下载(不定时更新)

    优品PPT 网址:https://www.ypppt.com/ 网站介绍:一家专注于分享高质量的免费PPT模板下载网站,包括图表.背景图片.素材.教程等各类PPT模板相关资源. OfficePLUS ...

  5. 推荐个免费ppt模板下载网站

    下面链接可以直接访问下载,都是高质量的免费下载,还没有广告,把压箱底的收藏全都拿出来了. 1.羊PPT(国外高端PPT模板,免费下) PPT模板界的一颗新星,很多优质的PPT模板都是免费下载,有很多精 ...

  6. 精美免费ppt模板下载-朴尔PPT

    市面上,免费PPT模板网站有很多,但大多良莠不齐,不是满天飞的广告,就是内容更新不及时,导致内容陈旧,跟各位分享1个到现在为止, 我觉得内容还比较优质,各方面指数ok的网站! 一.朴尔PPT(www. ...

  7. 免费PPT模板网站,模板精品好用,直接下载

    最近找了好些免费PPT模板网站,发现一个不错的新网站,推荐给大家,希望你们喜欢 直达地址:PPT模板_PPT模版免费下载_免费PPT模板下载 -[幻主PPT] 模板展示:

  8. 5+免费PPT模板下载网站(干货),亲测有效!(建议收藏)

    5+免费PPT模板下载网站(干货),亲测有效! 1.OfficePLUS.cn(访问点我) 微软官方的模板网站,包含PPT.Word.Excel等多种模板. 里面的所有模板支持免费下载,需要在下载之前 ...

  9. 免费ppt模板下载的网站推荐

    推荐一个免费ppt模板下载的网站 布丁花网_背景图片素材免费下载的网站 (budinghua.com) 这个网站PPT素材模板很多,也有课件.背景等素材,风格类型也很多,商务风.中国风.卡通风.简约风 ...

最新文章

  1. java 短语_从Java中的文本文件中提取短语
  2. 百度关键词排名查询源码_章丘百度霸屏总部,关键词排名腾沃云
  3. NoSuchMethodError: org.apache.avro.Schema.getLogicalType()Lorg/apache/avro/LogicalType;
  4. java毕业设计小小银动漫网站源码+lw文档+mybatis+系统+mysql数据库+调试
  5. 二十一世纪大学英语读写基础教程学习笔记(原文)——4 - The Happiest Man in the World(世界上最幸福的人)
  6. 水箱建模最小二乘法_消防水箱的设置要求
  7. c语言windows.h头文件详解
  8. keras 入门教程
  9. 2021-05-21 qt程序aas运行失败提示undefined symbol: _Z34QBasicAtomicInt_fetchAndAddOrderedPVii问题
  10. window系统 任务计划程序
  11. 解析:百度算法之细雨算法2.0
  12. RocketMQ编译版安装及安装中遇到的问题 windows版
  13. 300万微信公众号迎来广告时代
  14. ARChon 分析之三:Native Client
  15. 如果Mac上的键盘听写无法正常工作怎么办呢?
  16. Unity3D 飞碟游戏改进版
  17. roku能不能安装软件_如何在Roku上禁用自定义广告和跟踪
  18. C语言中用stop,C语言中It stop with signal SIGSEGV ,segmentation fault.解决方法
  19. 别开玩笑了!特种兵式旅游,胆小勿进!
  20. 取经:学霸的作息时间是怎么样的?为什么不会困?

热门文章

  1. 微赞php.ini_安装 · 微赞操作手册 · 看云
  2. 6.5K闭循环低温恒温设备的特点及技术参数
  3. Python+Vue计算机毕业设计汽车销售网站7tfw2(源码+程序+LW+部署)
  4. MIT6.S081 Lab3 Page tables
  5. 基于ai的预测_基于AI的预测性维护可增强战备状态,减少飞行故障
  6. 免费!百度权重数据接口 根据网址查询百度权重
  7. C++ 四舍五入与不四舍五入
  8. 最新版本mplayer移植pxa270成功!
  9. try(){}用法try-with-resources、try-catch-finally
  10. IviewUI form校验number类型有值却提示无效问题