您好,登錄后才能下訂單哦!
本篇文章為大家展示了Python 怎么爬取微博樹洞,內容簡明扼要并且容易理解,絕對能使你眼前一亮,通過這篇文章的詳細介紹希望你能有所收獲。
尤其是對于我這種需求量比較大的項目。不過好在最后發現了突破口:“微博樹洞”。“微博樹洞”是指宣告了自殺行為的過世的人的微博,其留言區成為成千上萬的抑郁癥或是絕望的人的歸屬,在其下方發布許多負能量甚至是尋死的宣言。
比如走飯的微博:
微博評論的數據接口有兩種,一種是手機版、一種是PC版。手機版能爬到的數據僅僅只有十五頁,因此我們從PC版入手,先來看看PC版的接口怎么找,長啥樣兒。
首先,在當前微博的頁面右鍵—檢查(F12)打開開發者工具,然后按照下圖的步驟進行操作(選擇NetWork—選擇XHR—隨便點擊另一個評論頁—查看右側新增的請求):
然后我們看新增的請求,你會發現在Preview中能看到格式化后的數據,而且里面有個html,仔細觀察這個html你會發現這個就是評論列表的數據。我們僅需要將這個html解析出來即可。
再看看get請求的URL:
https://weibo.com/aj/v6/comment/big?ajwvr=6&id=3424883176420210&page=2&__rnd=1573219876141
ajwvr是一個固定值為6、id是指想要爬取評論的微博id、page是指第幾頁評論、_rnd是請求時的毫秒級時間戳。
不過微博是要求登錄才能看更多評論的,因此我們需要先訪問微博,拿到cookie的值才能開始爬。
關注文章最下方的Python實用寶典,回復微博評論爬蟲即可獲得本項目的完整源代碼。
設定四個參數:
設定cookie:
發送請求并解析數據:
解析這串HTML中我們所需要的數據,這里用到了XPATH,如果你還不了解XPATH,可以看這篇文章《學爬蟲利器XPath,看這一篇就夠了》:
https://zhuanlan.zhihu.com/p/29436838
其中寫入文件的函數和下載圖片的函數如下:
以上就是我們所用到的代碼。在公眾號后臺回復 微博評論爬蟲 即可下載完整源代碼(附手機版爬蟲)。
盡管如此,我們得到的數據還是不夠,PC版的微博評論頁面也僅僅支持爬到第五十頁,第五十一頁后就拿不到數據了,如圖:
不過,走飯這個微博真的很多人回復,一天的數據就差不多50頁了,我們可以通過每天定時爬50頁來獲取數據。linux系統可以使用crontab定時腳本實現,windows系統可以通過計劃任務實現:
https://blog.csdn.net/wwy11/article/details/51100432
這里講講crontab實現方法。
假設你的Python存放在/usr/bin/且將腳本命名為weibo.py 存放在home中,在終端輸入crontab -e后,在最后面增加上這一條語句即可:
0 0 * * * /usr/bin/python /home/weibo.py
上述內容就是Python 怎么爬取微博樹洞,你們學到知識或技能了嗎?如果還想學到更多技能或者豐富自己的知識儲備,歡迎關注億速云行業資訊頻道。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。