使用Python爬取公众号的合集

   日期:2024-12-20    作者:hubinusb 浏览:86    移动:http://w.yusign.com/mobile/quote/1814.html


写一下如何爬取微信公众号里面的图片吧

先看看微信公众号的样子吧

我爬取的是公众号的合集内容

首先用手机打开某个图片公众号的文章,然后复制链接用电脑打开,它的url为

以下所展示的链接都是被我修改了的

https://mp.weixin.qq.com/mp/appmsgalbum?action=getalbum&__biz=MzDg3MjY3g==&album_id=2646021169516584499&count=10&begin_msgid=2247483683&begin_itemidx=1&is_reverse=1&uin=&key=&pass_ticket=&wxtoken=&devicetype=&clientversion=&__biz=Mzg2MDg3MjY3Mg%3D%3D&appmsg_token=&x5=0&f=json

每个参数的作用

  • : 操作类型,值为。
  • : 公众号的唯一标识,值为。
  • : 相册的唯一标识,值为。
  • : 需要获取的相册数量,值为。
  • : 开始的消息ID,值为。
  • : 开始的项目索引,值为。
  • : 是否倒序,值为。
  • : 用户uin,值为空。
  • : 密钥,值为空。
  • : 通行证,值为空。
  • : 微信令牌,值为空。
  • : 设备类型,值为空。
  • : 客户端版本,值为空。
  • : 文章令牌,值为空。
  • : x5参数,值为。
  • : 返回的数据格式,值为。

可以看到文章开头的图片,公告号的每篇文章都是能跳转的,我们爬取图片肯定也是爬取跳转之后页面的图片,那么第一件事就是先获取所有文章的url。然后我的思路是将url爬取后保存到csv文件中,然后再从csv中读取url进一步解析图片的位置,然后下载图片。这就是整体思路。

首先文章列表能够显示再网页上,那它必定是请求后端了的,那么请求后端我们就能拿到API接口,如图

可以看到也是成功获取到了接口,然后里面返回的列表就是网页中展示的文章列表了,这就非常好办了。我们只需要请求这个接口就能获取到所有文章的url了,然后微信公众号合集内容的规则就是,获取最后一条数据的消息ID是下一条数据开始的消息ID,所以当我们爬取到一个列表,假如这个列表有10条数据,那么第10条数据的msgid就是下一次请求的begin_msgid,这样就能获取11-20的数据,依次内推就能获取所有文章了,之前试过想一次性获取全部文章,好像不太行,所以用一个循环然后去修改begin_msgid参数发送请求就行了。

需要用到的库

 

参数上面已经讲过了就不讲了。

请求头的Referer和Cookie,用浏览器的开发工具(F12)找到文章请求,然后就能获取到。

 

分段展示代码

 
 

ok 然后坐等爬取完成,我这里是做了请求限制了的,如果想爬快一点把限制删掉就行了。

也是爬取完成了,但是爬完之后会报的错误,这个无关紧要,因为已经请求到最后数据之后的请求了,导致获取不到这个article_list的json数据了。

然后看到上面的图片是254个内容,但是爬取的链接只有244条,数据缺失了几条,但是程序也没出现问题,所以就不管了,也就几条数据,不影响,毕竟找出问题得花大量的时间。

上面只是爬取了文章的url,现在要进入文章爬取图片了。

首先,需要用到的库

 

然后爬取图片的思路就是解析我们之前爬取的文章url,通过遍历文章url,去使用xpath去匹配文章里面的图片就行了,第一次爬取出现了点小问题,后面会讲。

关于Xpath获取

偷懒方式如下

匹配图片url函数

 

**下载图片函数 **

 

main方法

 
 
 

可以看到有个别图片没有正常显示,那是因为这个公众号最新的文章图片url和之前不一样,我也是爬完才发现,虽然才几张图片,但是得优化一下

第一次爬取,爬到了1333张图片

download_image函数

 

优化之后也是没有出现图片无法显示的情况,然后爬取了1368张图片。

文章出现的代码只用于学习,不会影响公众号正常运行,如有侵权,联系删除。

爬取下来的图片将不会保存,望知~

公众号是没有反爬机制的,所以爬取下来很容易,不过公众号放的图片都不够高清,但是也还是能看。如果也想学习学习如何爬取的,可以关注公众号私信我,找我要链接。如果有更好的图片网站,也可以私信我~


关于Python技术储备

学好 Python 不论是就业还是做副业赚钱都不错,但要学会 Python 还是要有一个学习规划。最后给大家分享一份全套的 Python 学习资料,希望提供给想学习 Python 的小伙伴们一点帮助

二、Python基础学习视频

② 路线对应学习视频

③练习题

三、精品Python学习书籍
四、Python工具包+项目源码合集
①Python工具包
②Python实战案例
③Python小游戏源码
五、面试资料
六、Python兼职渠道
本文地址:http://w.yusign.com/quote/1814.html    述古往 http://w.yusign.com/static/ , 查看更多

特别提示:本信息由相关用户自行提供,真实性未证实,仅供参考。请谨慎采用,风险自负。


举报收藏 0评论 0
0相关评论
相关行情
推荐行情
点击排行
{
网站首页  |  关于我们  |  联系方式  |  用户协议  |  隐私政策  |  版权声明  |  网站地图  |  排名推广  |  广告服务  |  积分换礼  |  网站留言  |  RSS订阅  |  违规举报  |  鄂ICP备2020018471号