日韩黑丝制服一区视频播放|日韩欧美人妻丝袜视频在线观看|九九影院一级蜜桃|亚洲中文在线导航|青草草视频在线观看|婷婷五月色伊人网站|日本一区二区在线|国产AV一二三四区毛片|正在播放久草视频|亚洲色图精品一区

分享

我是怎么保存公眾號歷史文章合集到本地的?當(dāng)然是用python了!

 Four兄 2019-08-24
本文授權(quán)轉(zhuǎn)載自:小癡印記

不知道你有沒有這樣的經(jīng)歷。

偶然間,關(guān)注了一個自己特別感興趣的公眾號,感覺就像是挖到了一個寶藏。于是,我們就想翻一翻寶藏里都有什么。

但是,如果你想看到寶藏最開始的內(nèi)容,你不得不翻山越嶺,刷到公眾號的歷史起點(diǎn)。這還不算什么,等你下次想要接著看下一篇時,不得不重蹈覆轍。

那么,我們有什么辦法解決一下這個問題呢?


用萬能的python寫個腳本,我們就可以把公眾號歷史所有的文章批量的保存為本地的PDF,這樣,就可以根據(jù)標(biāo)題和日期來看自己喜歡的文章啦!


核心內(nèi)容:

1 抓包工具Fiddler的配置及其使用

2 python獲取公眾號全部歷史文章url地址

3 把url轉(zhuǎn)化為PDF

4 獲取單個文章的方法


1 抓包工具Fiddler的配置及使用

1)工作原理

客戶端和服務(wù)器之間建立一個代理服務(wù)器,監(jiān)聽本機(jī)發(fā)出的請求和服務(wù)器返回的響應(yīng)結(jié)果。


瀏覽器與服務(wù)器之間通過建立TCP連接以HTTP協(xié)議進(jìn)行通信,瀏覽器默認(rèn)通過自己發(fā)送HTTP請求到服務(wù)器。 

而Fiddler是c#開發(fā)(微軟出品,主要作者Eric Lawrence)的http代理服務(wù)器,fiddler工作于七層中的應(yīng)用層,能夠捕獲到通過的http(s)請求。

2)下載地址

這是官網(wǎng):http://www./fiddler
你也可以在公眾號【小癡印記】后臺,回復(fù)關(guān)鍵字“Fiddler抓包”直接獲取。

3)配置https

默認(rèn)情況下,F(xiàn)iddler是不會捕獲HTTPS會話的,初次使用時,需要下載安全證書,并配置。

具體步驟:
依次點(diǎn)擊“Tools-Options-Https”,進(jìn)行如下圖的配置,“Actions-Trust root”是下載安全證書的。


4)設(shè)置局域網(wǎng)ip和端口號

Fiddler的運(yùn)行機(jī)制其實(shí)就是本機(jī)上監(jiān)聽 8888 端口的 HTTP 代理。

Fiddler 啟動的時候默認(rèn) IE 的代理設(shè)為了127.0.0.1:8888,而其他瀏覽器是需要手動設(shè)置的,所以將 Chrome 瀏覽器的代理改為127.0.0.1:8888 就可以監(jiān)聽數(shù)據(jù)了。

具體操作步驟,見第一篇參考文章:
https://blog.csdn.net/jingjingshizhu/article/details/80566191

注意:運(yùn)行爬蟲程序時,要關(guān)閉Fidder客戶端

2 python源碼分析

1)打開微信客戶端,
點(diǎn)開某一個公眾號的歷史文章界面

以我的公眾號為例,如圖。


2)打開Fiddler,監(jiān)聽url
通過對比,前后兩個url,可以發(fā)現(xiàn),只是offset這個參數(shù)有所改變。

一些重要的關(guān)鍵字段:
__biz : 用戶和公眾號之間的唯一id
uin :用戶的私密id
key :請求的秘鑰,一段時候只會就會失效
offset :偏移量


        
圖的右下角,我們可以看到返回的數(shù)據(jù)類型,及其格式。
     
      
好啦,接下來,我們可以獲取一頁內(nèi)容看看啦。

看看,reponse_dict的內(nèi)容。


根據(jù)上圖的json字符串,我們要做的是把title、content_url、datetime提取出來。
見下圖。
至此,我們成功的獲取到了標(biāo)題、時間、內(nèi)容url等信息。


只有在最后一篇文章時,can_msg_continue=0,其余所有文章都是1。

因此,獲取公眾號歷史文章全部內(nèi)容,可以加一個死循環(huán),當(dāng)判斷為最后一篇文章時,直接break,結(jié)束循環(huán)。

完整代碼:

    本站是提供個人知識管理的網(wǎng)絡(luò)存儲空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點(diǎn)擊一鍵舉報。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多