Python爬虫:免费下载一万份PPT模板(非常详细)

2024-01-20 09:20

本文主要是介绍Python爬虫:免费下载一万份PPT模板(非常详细),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

1. 前言

不管是作为学生还是职场打工人作,我们都会要制作和使用ppt ,每次制作 ppt 一搞就是一半天,真的很愁人,网上模板免费的太丑,付费的要钱,害,难呐哈哈哈!!

今天就教大家一招,用 python 爬虫采集 1 万份『ppt 模板』,以后制作 ppt 再也不烦人了!!!

2. 相关介绍

1.模板来源

https://sc.chinaz.com/ppt/free_1.html

复制代码

img

每页 20 条,一共 500 页,共 10000 份 ppt 模板!

2.爬虫思路

  • 先遍历每一页,获取每一个 ppt 模板的 url。
  • 根据 ppt 模板的 url 获取下载地址。
  • 最后根据下载地址将文件下载到本地。

3. 爬取数据

1.遍历每一页

img

通过 xpath 可以定位到标签 class=bot-div,里面包含了 ppt 模板的 url 和名称。

import requestsfrom lxml import etree  ###遍历每一页def getlist():      for k in range(1,501):        url = "https://sc.chinaz.com/ppt/free_"+str(k)+".html"        res = requests.get(url)        res.encoding = 'utf-8'        text = res.text          selector = etree.HTML(text)        list = selector.xpath('//*[@class="bot-div"]')        for i in list:            title = i.xpath('.//a/text()')[0].replace("\n", '').replace(" ", '')            href = i.xpath('.//a/@href')[0].replace("\n", '').replace(" ", '')            print(title)            print(href)            print("----------------")

复制代码

遍历时需要获取每一个 ppt 模板 url(title)**和**名称(href)(方便下载时作为保存文件的命名)

img

2.获取下载地址

以下面 url 为例

https://sc.chinaz.com/ppt/210305465710.htm

复制代码

img

解析下载链接

img

通过 xpath 可以定位到标签 class=download-url,里面包含了四个下载地址,其实四个都一样,选择其中一个就可以了。

res = requests.get(url)res.encoding = 'utf-8'text = res.textselector = etree.HTML(text)href = selector.xpath('//*[@class="download-url"]/a/@href')[0]print(href)

复制代码

img

3.下载保存

根据拿到的下载地址下载文件保存到本地。

r = requests.get(href)with open(str(title)+".rar", "wb") as code:  code.write(r.content)

复制代码

img

img

ok,这样就将 ppt 模板下载到本地了。

下面我们开始批量下载!

4.批量下载

##下载文件def download(url,title):    res = requests.get(url)    res.encoding = 'utf-8'    text = res.text    selector = etree.HTML(text)    href = selector.xpath('//*[@class="download-url"]/a/@href')[0]      r = requests.get(href)    with open(str(title)+".rar", "wb") as code:      code.write(r.content)    print(str(title)+":下载完成!")    ###遍历每一页def getlist():      for k in range(1,501):        url = "https://sc.chinaz.com/ppt/free_"+str(k)+".html"        res = requests.get(url)        res.encoding = 'utf-8'        text = res.text          selector = etree.HTML(text)        list = selector.xpath('//*[@class="bot-div"]')        for i in list:            title = i.xpath('.//a/text()')[0].replace("\n", '').replace(" ", '')            href = i.xpath('.//a/@href')[0].replace("\n", '').replace(" ", '')            download("https://sc.chinaz.com/"+str(href), str(title))

复制代码

img

img

这样就可以将 10000 份 ppt 模板下载完毕

以上就是今天的全部内容分享,觉得有用的话欢迎点赞收藏哦!

Python经验分享

学好 Python 不论是用于就业还是做副业赚钱都不错,而且学好Python还能契合未来发展趋势——人工智能、机器学习、深度学习等。
小编是一名Python开发工程师,自己整理了一套最新的Python系统学习教程,包括从基础的python脚本到web开发、爬虫、数据分析、数据可视化、机器学习等。如果你也喜欢编程,想通过学习Python转行、做副业或者提升工作效率,这份【最新全套Python学习资料】 一定对你有用!

小编为对Python感兴趣的小伙伴准备了以下籽料 !

对于0基础小白入门:

如果你是零基础小白,想快速入门Python是可以考虑培训的!

  • 学习时间相对较短,学习内容更全面更集中
  • 可以找到适合自己的学习方案

包括:Python激活码+安装包、Python web开发,Python爬虫,Python数据分析,人工智能、机器学习、Python量化交易等学习教程。带你从零基础系统性的学好Python!

一、Python所有方向的学习路线

Python所有方向路线就是把Python常用的技术点做整理,形成各个领域的知识点汇总,它的用处就在于,你可以按照上面的知识点去找对应的学习资源,保证自己学得较为全面。
在这里插入图片描述

二、学习软件

工欲善其事必先利其器。学习Python常用的开发软件都在这里了,给大家节省了很多时间。

三、入门学习视频

我们在看视频学习的时候,不能光动眼动脑不动手,比较科学的学习方法是在理解之后运用它们,这时候练手项目就很适合了。

四、实战案例

光学理论是没用的,要学会跟着一起敲,要动手实操,才能将自己的所学运用到实际当中去,这时候可以搞点实战案例来学习。

五、面试资料

我们学习Python必然是为了找到高薪的工作,下面这些面试题是来自阿里、腾讯、字节等一线互联网大厂最新的面试资料,并且有阿里大佬给出了权威的解答,刷完这一套面试资料相信大家都能找到满意的工作。


最新全套【Python入门到进阶资料 & 实战源码 &安装工具】(安全链接,放心点击)

我已经上传至CSDN官方,如果需要可以扫描下方官方二维码免费获取【保证100%免费】

*今天的分享就到这里,喜欢且对你有所帮助的话,记得点赞关注哦~下回见 !

这篇关于Python爬虫:免费下载一万份PPT模板(非常详细)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/625521

相关文章

python: 多模块(.py)中全局变量的导入

文章目录 global关键字可变类型和不可变类型数据的内存地址单模块(单个py文件)的全局变量示例总结 多模块(多个py文件)的全局变量from x import x导入全局变量示例 import x导入全局变量示例 总结 global关键字 global 的作用范围是模块(.py)级别: 当你在一个模块(文件)中使用 global 声明变量时,这个变量只在该模块的全局命名空

AI一键生成 PPT

AI一键生成 PPT 操作步骤 作为一名打工人,是不是经常需要制作各种PPT来分享我的生活和想法。但是,你们知道,有时候灵感来了,时间却不够用了!😩直到我发现了Kimi AI——一个能够自动生成PPT的神奇助手!🌟 什么是Kimi? 一款月之暗面科技有限公司开发的AI办公工具,帮助用户快速生成高质量的演示文稿。 无论你是职场人士、学生还是教师,Kimi都能够为你的办公文

poj3468(线段树成段更新模板题)

题意:包括两个操作:1、将[a.b]上的数字加上v;2、查询区间[a,b]上的和 下面的介绍是下解题思路: 首先介绍  lazy-tag思想:用一个变量记录每一个线段树节点的变化值,当这部分线段的一致性被破坏我们就将这个变化值传递给子区间,大大增加了线段树的效率。 比如现在需要对[a,b]区间值进行加c操作,那么就从根节点[1,n]开始调用update函数进行操作,如果刚好执行到一个子节点,

C++11第三弹:lambda表达式 | 新的类功能 | 模板的可变参数

🌈个人主页: 南桥几晴秋 🌈C++专栏: 南桥谈C++ 🌈C语言专栏: C语言学习系列 🌈Linux学习专栏: 南桥谈Linux 🌈数据结构学习专栏: 数据结构杂谈 🌈数据库学习专栏: 南桥谈MySQL 🌈Qt学习专栏: 南桥谈Qt 🌈菜鸡代码练习: 练习随想记录 🌈git学习: 南桥谈Git 🌈🌈🌈🌈🌈🌈🌈🌈🌈🌈🌈🌈🌈�

常用的jdk下载地址

jdk下载地址 安装方式可以看之前的博客: mac安装jdk oracle 版本:https://www.oracle.com/java/technologies/downloads/ Eclipse Temurin版本:https://adoptium.net/zh-CN/temurin/releases/ 阿里版本: github:https://github.com/

【Python编程】Linux创建虚拟环境并配置与notebook相连接

1.创建 使用 venv 创建虚拟环境。例如,在当前目录下创建一个名为 myenv 的虚拟环境: python3 -m venv myenv 2.激活 激活虚拟环境使其成为当前终端会话的活动环境。运行: source myenv/bin/activate 3.与notebook连接 在虚拟环境中,使用 pip 安装 Jupyter 和 ipykernel: pip instal

poj 1258 Agri-Net(最小生成树模板代码)

感觉用这题来当模板更适合。 题意就是给你邻接矩阵求最小生成树啦。~ prim代码:效率很高。172k...0ms。 #include<stdio.h>#include<algorithm>using namespace std;const int MaxN = 101;const int INF = 0x3f3f3f3f;int g[MaxN][MaxN];int n

【机器学习】高斯过程的基本概念和应用领域以及在python中的实例

引言 高斯过程(Gaussian Process,简称GP)是一种概率模型,用于描述一组随机变量的联合概率分布,其中任何一个有限维度的子集都具有高斯分布 文章目录 引言一、高斯过程1.1 基本定义1.1.1 随机过程1.1.2 高斯分布 1.2 高斯过程的特性1.2.1 联合高斯性1.2.2 均值函数1.2.3 协方差函数(或核函数) 1.3 核函数1.4 高斯过程回归(Gauss

uva 1342 欧拉定理(计算几何模板)

题意: 给几个点,把这几个点用直线连起来,求这些直线把平面分成了几个。 解析: 欧拉定理: 顶点数 + 面数 - 边数= 2。 代码: #include <iostream>#include <cstdio>#include <cstdlib>#include <algorithm>#include <cstring>#include <cmath>#inc

uva 11178 计算集合模板题

题意: 求三角形行三个角三等分点射线交出的内三角形坐标。 代码: #include <iostream>#include <cstdio>#include <cstdlib>#include <algorithm>#include <cstring>#include <cmath>#include <stack>#include <vector>#include <