50行Python代码,获取公众号全部文章

50行Python代码,获取公众号全部文章_第1张图片

作者 | 胖虎

来源 | Python3X(ID: python3xxx )


爬取公众号的方式常见的有两种:

  • 通过搜狗搜索去获取,缺点是只能获取最新的十条推送文章。

  • 通过微信公众号的素材管理,获取公众号文章。缺点是需要申请自己的公众号。


50行Python代码,获取公众号全部文章_第2张图片


今天介绍一种通过抓包PC端微信的方式去获取公众号文章的方法。相比其他的方法非常方便。


50行Python代码,获取公众号全部文章_第3张图片


50行Python代码,获取公众号全部文章_第4张图片


如上图,通过抓包工具获取微信的网络信息请求,我们发现每次下拉刷新文章的时候都会请求 mp.weixin.qq.com/mp/xxx (公众号不让添加主页链接,xxx表示profile_ext) 这个接口。


经过多次测试分析,用到了以下几个参数

  • __biz : 用户和公众号之间的唯一id,

  • uin :用户的私密id

  • key :请求的秘钥,一段时候只会就会失效。

  • offset :偏移量

  • count :每次请求的条数


数据如下:


 
   


部分代码如下:


 
   


最后打印的list就是公众号的文章信息详情。包括标题(titile)、摘要(digest)、文章地址(content_url)、阅读原文地址(source_url)、封面图(cover)、作者(author)等等...


输出结果如下:


 
   


获取数据之后,可以保存到数据库中,也可以将文章保存在PDF中。


1、保存在Mongo中


 
   


结果如下:


50行Python代码,获取公众号全部文章_第5张图片


2、导入到PDF文件中


Python3中常用的操作PDF的库有python-pdf和pdfkit。我用了pdfkit这个模块导出pdf文件。

pdfkit是工具包Wkhtmltopdf的封装类,因此需要安装Wkhtmltopdf才能使用。

可以访问 https://wkhtmltopdf.org/downloads.html 下载和操作系统匹配的工具包。


50行Python代码,获取公众号全部文章_第6张图片


实现代码也比较简单,只需要传入导入文件的url即可。


安装pdfkit库:


 
   



 
   


运行之后成功导出pdf文件:


50行Python代码,获取公众号全部文章_第7张图片


完整代码




(*本文仅代表作者观点,转载请联系原作者)


活动推荐



50行Python代码,获取公众号全部文章_第8张图片


推荐阅读:

  • 我发现一个新的软件,用自然语言编程!非常酷!

  • 香港的房价真的那么贵吗?用数据挖掘真相!

  • 阿里巴巴杨群:高并发场景下Python的性能挑战

  • 媲美Pandas?Python的Datatable包怎么用?

  • 通俗易懂!使用Excel和TF实现Transformer!

  • 从0到1:Web开发绕不开的WSGI到底是什么?

  • 24式,加速你的Python

  • Python从入门到精通,这篇文章为你列出了25个关键技术点(附代码)

  • 500行Python代码打造刷脸考勤系统


640?wx_fmt=png 你点的每个“在看”,我都认真当成了喜欢

你可能感兴趣的:(50行Python代码,获取公众号全部文章)