网上的免费ppt模板很多,但是当需要使用的时候,一个个去搜寻下载实在是很麻烦,那么为什么不直接寻找一个免费的ppt模板网站,把其免费的PPT模板都爬取下载,需要使用的时候直接挑选即可


文章目录

  • 网页层次分析
  • 流程图
  • 代码展示
  • 结果展示

网页层次分析

我选取的免费的ppt模板网址是http://www.ypppt.com/moban/

从以上截图可以看出,这是个典型的三层结构

第一层是全部的ppt的列表
第二层是ppt的详情页,在详情页内有下载链接的入口
第三层是我们最终的目标层,存在下载链接

由第一层的链接可以看出翻页非常简单,只要定位到最后一页,循环遍历即可

流程图

代码展示

我用的是scrapy,以下给主体部分的代码。用scrapy十分高效,总共2000+的PPT下载链接在一分钟内就全部爬好了。当然这也跟这个网站没有反爬是分不开的,当然如果不是很着急最后设置一下延时,攻击到网站就不好了

# -*- coding: utf-8 -*-
import scrapy
import re
from ppt_get.items import pptdownload_urlclass PptSpider(scrapy.Spider):name = 'ppt'allowed_domains = ['ypppt.com']start_urls = ['http://www.ypppt.com/moban/']page_num = 0base_url = 'http://www.ypppt.com'def parse(self, response):self.page_num = response.xpath('//div[@class="page-navi"]/a[11]/@href').re_first('\d+')yield scrapy.Request(url='http://www.ypppt.com/moban/',callback=self.first_deep)for i in range(2,int(self.page_num)+1):yield scrapy.Request(url = 'http://www.ypppt.com/moban/list-{}.html'.format(i),callback=self.first_deep)def first_deep(self, response):url_list = response.xpath('//ul[@class="posts clear"]/li/a[2]/@href').extract()for i in url_list:yield scrapy.Request(url=self.base_url+i,callback=self.second_deep)def second_deep(self, response):url = response.xpath('//div[@class="button"]/a/@href').extract_first()yield scrapy.Request(url=self.base_url+url,callback=self.third_deep)def third_deep(self, response):item = pptdownload_url()download_url = response.xpath('//ul[@class="down clear"]/li/a/@href').extract()for i in range(len(download_url)):if 'http://' not in download_url[i]:download_url[i] = self.base_url + download_url[i]item['download_url'] = download_urltitle = response.xpath('//div[@class="de"]/h1/text()').extract_first().strip(' - 下载页')item['title'] = titleyield item

结果展示


github完整项目地址

【超实用】爬取2000+免费PPT模板(新手向)相关推荐

  1. 爬虫基础之Python简单爬取实例-----爬取网站的PPT模板

    目录 一.网络爬虫是什么? 二.网站分析 1.进行网站分析: 2.分析完毕,开始反推 三.代码分析 1.引入库 2.网页源码 四.运行结果 五.总结 一.网络爬虫是什么? 网络爬虫(又称为网页蜘蛛,网 ...

  2. 6个免费PPT模板网站,赶紧马住了

    今天这期内容给大家推荐6个免费PPT模板网站,有PPT背景.PPT素材.PPT模板.PPT课件等丰富资源.模板直接套用,对于不会做PPT的新手朋友,真的是非常友好. 1.菜鸟图库 https://ww ...

  3. 这几个免费PPT模板、素材库,你绝对不能错过

    1.菜鸟图库 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. 免费PPT模板 | 《超能陆战队》暖心大白通用演示PPT模板

    今天给大家带来一款根据<超能陆战队>的动画电影风格设计的PPT,模板主题用卡通人物大白,用超暖人的大白形象做设计主题,采用红白配色带点科技感的设计,一款非常好看的PPT模板,可以直接免费白 ...

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

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

最新文章

  1. ServletContext讲解
  2. linux中如何查看某一进程的启动时间
  3. 11_短信发送器_快速回复页面实现
  4. Centos 6.4 搭建LANMP一键安装版
  5. 深圳腾讯java小星星_腾讯自研沙盒手游《手工星球》邀你共赴星派对,来CJ现场一起嗨!...
  6. ResourceDictionary主题资源替换(二) :编译期间,替换主题资源
  7. 拓端tecdat|在python 深度学习Keras中计算神经网络集成模型
  8. 产品小白的Axure之路
  9. 广数系统加工中心编程_CNC加工中心编程加工的一些小技巧,学会必有用
  10. 工具-IDM(Google浏览器下载插件)
  11. PTA2-6 打印学生选课清单(15 分)
  12. 华为手机左侧快捷方式_让华为手机使用更轻松,这些快捷键与手势该知道!
  13. vbs整人代码大集合
  14. python线程池学习
  15. 《Learning Scheduling Algorithms for Data Processing Clusters》
  16. Ajax请求前显示的等待图标
  17. 电源完整性之仿真设计原理
  18. jpg格式电脑怎么弄_(常见问题)如何把HEIC格式图片转换成JPG格式?
  19. IBM p系列小型机日常维护及故障排除时常用命令(检查IBM设备状态汇总)
  20. 跨站请求伪造(CSRF)示例、原理及其防御措施

热门文章

  1. Android自定义拍照实现
  2. 信迈TI AM5728 DCAN 驱动详解
  3. java高校网上报销系统计算机毕业设计MyBatis+系统+LW文档+源码+调试部署
  4. Android自定义View初探(二)——仿360垃圾清理
  5. Roll the Circle(公式,规律
  6. 51单片机:独立按键控制数码管计数
  7. ubuntu18.04亮度无法调整时,安装brightness-controller的两种方式
  8. 【测试人】最全测试策略总结,这一篇足足够用了......
  9. 基于vue的iviewui组件应用和封装开发
  10. 二叉树排序--简单明了(知道前序后续求中序..)