chinese直男口爆体育生外卖, 99久久er热在这里只有精品99, 又色又爽又黄18禁美女裸身无遮挡, gogogo高清免费观看日本电视,私密按摩师高清版在线,人妻视频毛茸茸,91论坛 兴趣闲谈,欧美 亚洲 精品 8区,国产精品久久久久精品免费

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

如何利用Python網(wǎng)絡(luò)爬蟲抓取微信朋友圈的動(dòng)態(tài)信息

馬哥Linux運(yùn)維 ? 來源:未知 ? 作者:李倩 ? 2018-06-27 15:16 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

今天小編給大家分享一下如何利用Python網(wǎng)絡(luò)爬蟲抓取微信朋友圈的動(dòng)態(tài)信息,實(shí)際上如果單獨(dú)的去爬取朋友圈的話,難度會(huì)非常大,因?yàn)槲⑿艣]有提供向網(wǎng)易云音樂這樣的API接口,所以很容易找不到門。不過不要慌,小編在網(wǎng)上找到了第三方工具,它可以將朋友圈進(jìn)行導(dǎo)出,之后便可以像我們正常爬蟲網(wǎng)頁一樣進(jìn)行抓取信息了。

就提供了這樣一種服務(wù),支持朋友圈導(dǎo)出,并排版生成微信書。本文的主要參考資料來源于這篇博文:

感謝大佬提供的接口和思路。具體的教程如下。

一、獲取朋友圈數(shù)據(jù)入口

1、關(guān)注公眾號【出書啦】

2、之后在主頁中點(diǎn)擊【創(chuàng)作書籍】-->【微信書】。

3、點(diǎn)擊【開始制作】-->【添加隨機(jī)分配的出書啦小編為好友即可】,長按二維碼之后便可以進(jìn)行添加好友了。

4、之后耐心等待微信書制作,待完成之后,會(huì)收到小編發(fā)送的消息提醒,如下圖所示。

至此,我們已經(jīng)將微信朋友圈的數(shù)據(jù)入口搞定了,并且獲取了外鏈。

確保朋友圈設(shè)置為【全部開放】,默認(rèn)就是全部開放,如果不知道怎么設(shè)置的話,請自行百度吧。

5、點(diǎn)擊該外鏈,之后進(jìn)入網(wǎng)頁,需要使用微信掃碼授權(quán)登錄。

6、掃碼授權(quán)之后,就可以進(jìn)入到微信書網(wǎng)頁版了,如下圖所示。

7、接下來我們就可以正常的寫爬蟲程序進(jìn)行抓取信息了。在這里,小編采用的是Scrapy爬蟲框架,Python用的是3版本,集成開發(fā)環(huán)境用的是Pycharm。

二、創(chuàng)建爬蟲項(xiàng)目

1、確保您的電腦上已經(jīng)安裝好了Scrapy。之后選定一個(gè)文件夾,在該文件夾下進(jìn)入命令行,輸入執(zhí)行命令:

scrapy startproject weixin_moment

,等待生成Scrapy爬蟲項(xiàng)目。

2、在命令行中輸入cd weixin_moment,進(jìn)入創(chuàng)建的weixin_moment目錄。之后輸入命令:

scrapy genspider 'moment' 'chushu.la'

,創(chuàng)建朋友圈爬蟲,如下圖所示。

3、執(zhí)行以上兩步后的文件夾結(jié)構(gòu)如下:

三、分析網(wǎng)頁數(shù)據(jù)

1、進(jìn)入微信書首頁,按下F12,建議使用谷歌瀏覽器,審查元素,點(diǎn)擊“Network”選項(xiàng)卡,然后勾選“Preserve log”,表示保存日志,如下圖所示??梢钥吹街黜摰恼埱蠓绞绞莋et,返回的狀態(tài)碼是200,代表請求成功。

2、點(diǎn)擊“Response”(服務(wù)器響應(yīng)),可以看到系統(tǒng)返回的數(shù)據(jù)是JSON格式的。說明我們之后在程序中需要對JSON格式的數(shù)據(jù)進(jìn)行處理。

3、點(diǎn)擊微信書的“導(dǎo)航”窗口,可以看到數(shù)據(jù)是按月份進(jìn)行加載的。當(dāng)點(diǎn)擊導(dǎo)航按鈕,其加載對應(yīng)月份的朋友圈數(shù)據(jù)。

4、當(dāng)點(diǎn)擊【2014/04】月份,之后查看服務(wù)器響應(yīng)數(shù)據(jù),可以看到頁面上顯示的數(shù)據(jù)和服務(wù)器的響應(yīng)是相對應(yīng)的。

5、查看請求方式,可以看到此時(shí)的請求方式變成了POST。細(xì)心的伙伴可以看到在點(diǎn)擊“下個(gè)月”或者其他導(dǎo)航月份的時(shí)候,主頁的URL是始終沒有變化的,說明該網(wǎng)頁是動(dòng)態(tài)加載的。之后對比多個(gè)網(wǎng)頁請求,我們可以看到在“Request Payload”下邊的數(shù)據(jù)包參數(shù)不斷的發(fā)生變化,如下圖所示。

6、展開服務(wù)器響應(yīng)的數(shù)據(jù),將數(shù)據(jù)放到JSON在線解析器里,如下圖所示:

可以看到朋友圈的數(shù)據(jù)存儲(chǔ)在paras /data節(jié)點(diǎn)下。

接下來將寫程序,進(jìn)行數(shù)據(jù)抓取。接著往下繼續(xù)深入。

四、代碼實(shí)現(xiàn)

1、修改Scrapy項(xiàng)目中的items.py文件。我們需要獲取的數(shù)據(jù)是朋友圈和發(fā)布日期,因此在這里定義好日期和動(dòng)態(tài)兩個(gè)屬性,如下圖所示。

2、修改實(shí)現(xiàn)爬蟲邏輯的主文件moment.py,首先要導(dǎo)入模塊,尤其是要主要將items.py中的WeixinMomentItem類導(dǎo)入進(jìn)來,這點(diǎn)要特別小心別被遺漏了。之后修改start_requests方法,具體的代碼實(shí)現(xiàn)如下圖。

3、修改parse方法,對導(dǎo)航數(shù)據(jù)包進(jìn)行解析,代碼實(shí)現(xiàn)稍微復(fù)雜一些,如下圖所示。

l需要注意的是從網(wǎng)頁中獲取的response是bytes類型,需要顯示的轉(zhuǎn)為str類型才可以進(jìn)行解析,否則會(huì)報(bào)錯(cuò)。

l在POST請求的限定下,需要構(gòu)造參數(shù),需要特別注意的是參數(shù)中的年、月和索引都需要是字符串類型的,否則服務(wù)器會(huì)返回400狀態(tài)碼,表示請求參數(shù)錯(cuò)誤,導(dǎo)致程序運(yùn)行的時(shí)候報(bào)錯(cuò)。

l在請求參數(shù)還需要加入請求頭,尤其是Referer(反盜鏈)務(wù)必要加上,否則在重定向的時(shí)候找不到網(wǎng)頁入口,導(dǎo)致報(bào)錯(cuò)。

l上述的代碼構(gòu)造方式并不是唯一的寫法,也可以是其他的。

4、定義parse_moment函數(shù),來抽取朋友圈數(shù)據(jù),返回的數(shù)據(jù)以JSON加載的,用JSON去提取數(shù)據(jù),具體的代碼實(shí)現(xiàn)如下圖所示。

5、在setting.py文件中將ITEM_PIPELINES取消注釋,表示數(shù)據(jù)通過該管道進(jìn)行處理。

6、之后就可以在命令行中進(jìn)行程序運(yùn)行了,在命令行中輸入

scrapy crawl moment -o moment.json

,之后可以得到朋友圈的數(shù)據(jù),在控制臺上輸出的信息如下圖所示。

7、爾后我們得到一個(gè)moment.json文件,里面存儲(chǔ)的是我們朋友圈數(shù)據(jù),如下圖所示。

8、嗯,你確實(shí)沒有看錯(cuò),里邊得到的數(shù)據(jù)確實(shí)讓人看不懂,但是這個(gè)并不是亂碼,而是編碼的問題。解決這個(gè)問題的方式是將原來的moment.json文件刪除,之后重新在命令行中輸入下面的命令:

scrapy crawl moment -o moment.json -s FEED_EXPORT_ENCODING=utf-8,

此時(shí)可以看到編碼問題已經(jīng)解決了,如下圖所示。

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報(bào)投訴
  • 網(wǎng)絡(luò)爬蟲
    +關(guān)注

    關(guān)注

    1

    文章

    52

    瀏覽量

    8944
  • python
    +關(guān)注

    關(guān)注

    56

    文章

    4827

    瀏覽量

    86790
  • 微信
    +關(guān)注

    關(guān)注

    6

    文章

    512

    瀏覽量

    27355

原文標(biāo)題:如何利用Python網(wǎng)絡(luò)爬蟲抓取微信朋友圈的動(dòng)態(tài)

文章出處:【微信號:magedu-Linux,微信公眾號:馬哥Linux運(yùn)維】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關(guān)推薦
    熱點(diǎn)推薦

    單身狗不哭,用段子霸占朋友圈!

    `單身狗不哭,用段子霸占朋友圈!情人節(jié),單身狗的劫!整理了網(wǎng)絡(luò)上情人節(jié)段子提供給廣大單身狗當(dāng)朋友圈博素材!拿好!不謝!單身狗們是時(shí)候改變你單身的命運(yùn)了,要不然明年你還是一個(gè)人,,,
    發(fā)表于 02-14 17:59

    Python爬蟲簡介與軟件配置

    Python爬蟲練習(xí)一、爬蟲簡介1. 介紹2. 軟件配置二、爬取南陽理工OJ題目三、爬取學(xué)校信息通知四、總結(jié)五、參考一、爬蟲簡介1. 介紹
    發(fā)表于 01-11 06:32

    怎么用RK3288 android去解決朋友圈視頻不能播放的問題呢

    怎么用RK3288 android去解決朋友圈視頻不能播放的問題呢?
    發(fā)表于 02-18 06:59

    python網(wǎng)絡(luò)爬蟲概述

    網(wǎng)絡(luò)爬蟲(Web Spider)又稱網(wǎng)絡(luò)蜘蛛、網(wǎng)絡(luò)機(jī)器人,是一種按照一定的規(guī)則,自動(dòng)地抓取萬維網(wǎng)信息
    發(fā)表于 03-21 16:51

    張小龍朋友圈致敬喬布斯,小程序給了安卓手機(jī)更多便利

    1 月 9 日,小程序如期上線。 目前,打開小程序共有三種方式:掃描二維碼、好友分享(只能發(fā)給好友或群聊,不能發(fā)到朋友圈),以及用戶
    發(fā)表于 01-09 11:08 ?1086次閱讀

    無人機(jī),AppleWatch和朋友圈竟然是哆啦A夢發(fā)明的!

     是誰發(fā)明的?——張小龍   那信里面的朋友圈呢?還是張小龍嗎?   絕對不是,而是日本的一個(gè)胖子——哆啦A夢。
    發(fā)表于 03-10 10:30 ?2229次閱讀

    廣告團(tuán)隊(duì)發(fā)布公告 朋友圈廣告@好友評論互動(dòng)能力全量開放

    廣告團(tuán)隊(duì)發(fā)布公告 朋友圈廣告@好友評論互動(dòng)能力全量開放
    發(fā)表于 04-18 15:29 ?1261次閱讀

    華為技術(shù)實(shí)力得到更多朋友圈的認(rèn)可

    華為技術(shù)實(shí)力得到更多朋友圈的認(rèn)可
    發(fā)表于 05-31 10:18 ?1210次閱讀

    新版將支持朋友圈評論使用表情包

    12月23日消息,部分網(wǎng)友投遞線索稱,新版支持在朋友圈評論中使用表情包做回復(fù)。
    的頭像 發(fā)表于 12-23 15:54 ?2600次閱讀

    朋友圈評論表情包功能已暫停

    朋友圈評論表情包還沒新鮮兩天,就有網(wǎng)友發(fā)現(xiàn),這一功能已經(jīng)離奇消失。
    的頭像 發(fā)表于 12-25 15:42 ?2866次閱讀

    Python爬蟲:使用哪種協(xié)議的代理IP最佳?

    網(wǎng)絡(luò)大數(shù)據(jù)要抓取信息,大多需要經(jīng)過python爬蟲工作,爬蟲能夠幫助我們將頁面的信息
    的頭像 發(fā)表于 06-28 16:25 ?2150次閱讀

    Python網(wǎng)絡(luò)爬蟲

    Python網(wǎng)絡(luò)爬蟲的方法說明。
    發(fā)表于 06-01 11:55 ?21次下載

    汽車芯片有多缺貨,廣汽老總親自發(fā)朋友圈找ST芯片

    轉(zhuǎn)發(fā)了這條尋芯片的。 缺貨都缺到需要發(fā)朋友圈的地步了,汽車芯片到底是有多缺?有媒體采訪了廣汽乘用車的一位高管,他回答,“我們老總已經(jīng)號召公司上上下下利用各種資源和渠道尋芯片了,我也
    發(fā)表于 08-17 17:00 ?2247次閱讀

    python網(wǎng)絡(luò)爬蟲概述

    網(wǎng)絡(luò)爬蟲(Web Spider)又稱網(wǎng)絡(luò)蜘蛛、網(wǎng)絡(luò)機(jī)器人,是一種按照一定的規(guī)則,自動(dòng)地抓取萬維網(wǎng)信息
    的頭像 發(fā)表于 03-21 16:50 ?2263次閱讀

    利用Python編寫簡單網(wǎng)絡(luò)爬蟲實(shí)例

    利用 Python編寫簡單網(wǎng)絡(luò)爬蟲實(shí)例2 實(shí)驗(yàn)環(huán)境python版本:3.3.5(2.7下報(bào)錯(cuò)
    發(fā)表于 02-24 11:05 ?14次下載