zoukankan      html  css  js  c++  java
  • 一键备份公众号的所有文章到PDF,再也不用担心想看的文章被删了

    有的时候,我们会发现收藏的某个微信公众号文章会被删或者和谐了,尤其是对自己非常实用的文章,一定会后悔当初怎么没有复制或者备份下来。

    单篇的公众号文章要备份,随便百度一下就能找到非常多方法,这里就不多废话了。

    如果要备份某个公众号的所有文章,这个就要费点功夫了。网上搜索了一下,免费付费的工具都有,评论效果也是不一而论,不好说。

    其实原理比较说起来还是不难的,今天永恒君就来分享一下备份某个公众号的所有文章的思路方法。

    以公众号永恒君的百宝箱为例了,原理是大致是这样的:

    • 抓包抓取微信客户端的接口

    • 使用Python请求微信接口获取公众号文章链接并下载

    1、抓包抓取微信客户端的接口

    常见的抓包工具有Fiddler,charles等等,永恒君这里用的是charles。

    使用之前需要先进行一系列的配置,安装证书,添加域名和host。否则获取不到https接口数据,显示unknown。详细的配置方法可参考这里

    图片

    配置好后启动,打开微信客户端找到公众号,进入文章列表可以看到发过的文章。

    图片

    这样可以抓取到公众号文章接口数据了。

    图片

    公众号文章的接口地址如下:

    /mp/profile_ext?action=getmsg&__biz=MzIzMTU2OTkwOQ==&f=json&offset=10&count=10&is_ok=1&scene=124&uin=MzY0MDY1OTU1&key=61633b3e6808122f2a8e656cab84fa561b091de04bff962f725a959bf7d4e91507cf2f369f5dd89c9346abc8a415882fc2a13b51777dc54fba05e79c2346af8c872d619e7b10b27d515745b96d3ddd0f5fb09083f3bba38b8814be5cd32ab159d4964f299b988d29e1fbbe15ae2aa9f3a572392a143c354ba86df0d29414a0ee
    

    参数比较多,其中有用的参数为:

    __biz 是用户和公众号之间的唯一id
    uin是用户的id,这个是不变的
    key 是请求的秘钥,一段时间就会失效
    offset 是偏移量
    count 是每次请求的条数

    通过上面的请求,就可以获取公众号文章的信息了,包括文章标题titile、文章地址content_url、阅读原文地址source_url、封面cover、作者author,抓取这些就行了。

    2、使用Python请求微信接口获取公众号文章链接并下载

    有了上面的接口参数,就可以开始用Python请求获取文章信息了。

    图片

    图片

    这里只抓取永恒君署名的原创文章,公众号一共有大约230多篇原创,生成HTML文件3分钟就全部下载下来了。

    图片

    用浏览器打开就能看。

    图片

    但是有个问题,html文件里面的图片需要联网才能进行查看

    图片

    所以永恒君把html文章再用python导出成PDF文档。

    导出PDF用的工具是wkhtmltopdf,这里特别说一下,这个工具需要先下载安装 wkhtmltopdf。

    接着Python中安装pdfkit库,调用wkhtmltopdf就可以了。

    因为需要联网获取图片,因此生成PDF会比较慢,耐心等待几十分钟之后,PDF文件也全部生成了。

    图片

    PDF也可以用浏览器直接打开,比如这篇 这个统计家庭人口的公式有点厉害了~~~

    图片

    如果觉得PDF文件数量太多了,也可以借助pdf合并软件,将所有的pdf合并成单独的合集,目录就以每个文件名命名,方便查找。

    图片

    这样就完美的把我公众号的所有文章下载到本地了,有HTML和PDF格式。

    图片

    以上获取文章的代码写的很简陋,还没有做优化,不太方便分享出来,怕误导大家。有需要的话可以联系我帮忙下载公众号文章。

    欢迎交流!
  • 相关阅读:
    Opencv3.4:显示一张图片
    Windows编译Opencv
    FFmpeg4.0笔记:rtsp2rtmp
    FFmpeg4.0笔记:file2rtmp
    Ubuntu编译安装crtmp-server
    python笔记:#014#综合应用
    python笔记:#012#函数
    Python学习--利用scapy库实现ARP欺骗
    metasploit——(三)渗透攻击之旅
    metasploit——(一)情报收集篇
  • 原文地址:https://www.cnblogs.com/eternalpal/p/15225833.html
Copyright © 2011-2022 走看看