背景
现在有很多自媒体平台,如头条号、搜狐号、大鱼号、百家号等,每个人都可以成为创作者发布自己的作品。如果想把某个作者的文章都下下来,一篇一篇的下载会很麻烦,而用爬虫则会很简单,顺便还能练练手。这里就以抓取规则比较比较简单的搜狐号来开到。
工具
pycharm、Python3、PC
库 os、 re、BeautifulSoup、requests、json、urllib.parse
思路
入口URL进入 –> 获取文章地址 –> 获取图片地址 –> 下载文章与图片
注:主线思路很简单,但还是会遇到很多小问题
效果
重播
播放
00:00
/
00:00
直播
00:00
进入全屏
50
点击按住可拖动视频
开始
一、网站分析
1、先选定一个要爬取的自媒体账号,比如随便选的:
2、用fiddler或F12抓包,发现返回的数据包里面不包含连接。这说明连接应该都放在在某个请求里面,而这个请求返回的是json格式。
3、在请求列表里找,最终在这个里面看到了猫腻
用浏览器访问下试试,好多URL和title,就是这个了!
4、在看他的地址结构,pageNumber应该是第几页,xpt是每个自媒体账号的唯一id,pageSize是一页显示多少条信息。
5、点进一篇文章,发现文章内容在
6、分析完成后,可以正式敲代码了。
二、编码
1、先对输入的URL进行拆分,提取xpt
2、创建文件夹,存放爬取的资源
3、然后用pageNumber、xpt、pageSize拼接路径,获取保存URL的页面;将返回的数据转为json格式,解析地址;通过pageNumber自增,循环获取所有页面的地址。
4、将信息保存到本地txt文件
5、遍历获取地址对应的文章内容和图片
6、效果如下
优化
由于加了图片下载,单线程会比较慢,因此可考虑优化成 多线程,效率刚刚滴。
结语
私聊小编发送“搜狐号爬虫”,可获取.py源码和生成的.exe程序。
创业项目群,学习操作 18个小项目,添加 微信:923199819 备注:小项目!
如若转载,请注明出处:https://www.zodoho.com/137210.html