网页视频抓取工具 知乎(第451篇原创,和30w+一起学Python! )

优采云 发布时间: 2022-01-26 18:12

  网页视频抓取工具 知乎(第451篇原创,和30w+一起学Python!

)

  第451条原创,30w+学Python!

  

  最近开学了,大家都在忙着准备各种学习资料,准备新学期努力学习,充实自己。小编身边的同学也是如此。最近,小编的同学小李遇到了一个非常棘手的问题。

  她想把Python学习教程打印在一个网页上,以便自己学习,但是手动将上千页的教程一一转换成pdf并保存在本地确实很麻烦。

  这是将html转换为pdf的问题。其实网上有很多不错的html资源,但是学习起来不方便!于是小编向小李保证,这个小东西在我身上。今天小编就给大家分享一下如何使用Python将html数据转换成pdf。

  01.爬取学习资料

  如今,互联网上有很多在线学习资料。为了方便讲解,小编以python3.9.2的中文文档为例,在本地抓取保存。链接如下:

  打开以上链接后,你会发现网页中不同内容的链接地址,包括基本的python字符、python语法等。

  

  02.获取网页链接

  在上图中,我们需要特别注意用红色方块标记的链接。每个链接都会跳转到对应的子页面,而在子页面中,就是我们要保存的内容。

  

  可以看到,上图中,python快速查看子页面收录了我们需要提取的文本内容。所以将 html 内容保存为 pdf 的第一步是获取子页面的链接。由于大部分教程都是固定内容,所以教程网页大部分是静态页面,在网页源代码中很容易找到子页面的网页链接。

  

  对于子页面的链接爬取,流程如下图所示:

  

  程序中通过BeautifulSoup库解析网页源代码,然后提取所有子页面链接地址并返回。如果爬取失败,则直接返回None。

  03.html转pdf

  得到子页面的链接后,下一步就是将html子页面保存为pdf文件。小编使用的pdfkit库,pdfkit库可以将网页保存为pdf文档。首先介绍一下pdfkit库的安装。

  按照上面的操作流程,就可以安装pdfkit库了。对于pdfkit库的使用,常见的三种用法:

  上述程序主要完成几个步骤:

  首先需要指定wkhtmltopdf.exe文件的路径;

  因此,pdfkit库只能将子页面保存为单独的pdf文档,不能通过pdfkit库直接将所有子页面拼接成一个完整的pdf文档。小编使用PyPDF2库中的PdfFileMerger类来实现pdf文档的拼接。程序如下图所示。

  

  程序首先将所有html网页保存为单独的pdf文档,然后通过PdfFileMerger类对象实现pdf文档的拼接。最后,您可以获得所有的pdf内容。最后,我们通过视频展示看一下程序的效果。

  另外,该程序不仅可以爬取python3.9的中文文档,还可以爬取其他在线文档,只需要修改程序获取要爬取的网页链接,比如Flask中文文档的爬取,程序只需要按照下图进行修改,Flask的在线文档就可以保存为PDF文档了。

  

  04.总结

  学习 Python 实际上是非常有趣和有用的。因为 Python 拥有大量现成的库,可以帮助我们轻松解决工作中的许多琐碎问题。小编对上面的程序稍作修改,很快就帮阿里拿到了教程,保存为pdf发给她,小编和女神的关系就更近了。

  为了方便大家更好的理解,我们会在B站录制一个完整的视频(详情见原文),一步步讲解程序,再提供源码和视频!

  1推荐阅读:

2入门: 最全的零基础学Python的问题  | 零基础学了8个月的Python  | 实战项目 |学Python就是这条捷径

3干货:爬取豆瓣短评,电影《后来的我们》 | 38年NBA最佳球员分析 |   从万众期待到口碑扑街!唐探3令人失望  | 笑看新倚天屠龙记 | 灯谜答题王 |用Python做个海量*敏*感*词*姐素描图 |

4趣味:弹球游戏  | 九宫格  | 漂亮的花 | 两百行Python《天天酷跑》游戏!

5AI: 会做诗的机器人 | 给图片上色 | 预测收入 | *敏*感*词*这么火,我用机器学习做个迷你推荐系统电影

6

7

  年度最火副本

  1点这里,直达菜鸟学PythonB站!!

2

3

0 个评论

要回复文章请先登录注册


官方客服QQ群

微信人工客服

QQ人工客服


线