python學習|《星際特工:千星之城》豆瓣1.8萬短評爬取

最近小編想做《星際特工:千星之城》的影評分析,就簡單學習了一下python爬蟲(網路資源),從urlllib到requests簡單應用,到偽裝瀏覽器,到代理ip,最後就到selenium了。

python學習|《星際特工:千星之城》豆瓣1.8萬短評爬取

Step 1 :selenium 登陸豆瓣:主要解決2個問題,一是輸入使用者名稱和密碼,常規方法即可。二是驗證碼,採取手工輸入獲取。但有時候並不需要驗證碼,故用try exception解決。

Tips: selenium啟動Firefox需要一個啟動程名為geckodriver,從selenium官網下即可。放到當前路徑下即可(免一堆麻煩)

python學習|《星際特工:千星之城》豆瓣1.8萬短評爬取

python學習|《星際特工:千星之城》豆瓣1.8萬短評爬取

Step 2: selenium 《星際特工:千星之城》跳轉至電影評論的頁面。非常簡單。可以使用driver。implicitly_wait()等待頁面載入

python學習|《星際特工:千星之城》豆瓣1.8萬短評爬取

python學習|《星際特工:千星之城》豆瓣1.8萬短評爬取

Step 3: selenium 《星際特工:千星之城》評論內容讀取,並跳轉至下頁。內容讀取包括評論者、推薦星級、投票數(多少人認為有用)、評論時間、評論內容。讀取的內容會寫到一個csv中(其中涉及到編碼的問題,困擾小編2天多),其實用txt方式開啟csv,然後用ansi儲存,csv就不會再顯示為亂碼了。

python學習|《星際特工:千星之城》豆瓣1.8萬短評爬取

python學習|《星際特工:千星之城》豆瓣1.8萬短評爬取

python學習|《星際特工:千星之城》豆瓣1.8萬短評爬取

為什麼上面的函式都要返回driver呢,主要是爬取評論數比較多,翻頁情況比較多,防止一些意外情況錯誤發生。返回driver可以繼續爬,不用重新來過。

4)csv文件:你會發現有些評論是沒有推薦星級的,有些作者使用者的名字奇形怪狀,豆瓣評論本身有些是重複的。不夠問題不大,簡單刷選處理下沒問題。

python學習|《星際特工:千星之城》豆瓣1.8萬短評爬取

5)上面檔案我們可以做些什麼?

python學習|《星際特工:千星之城》豆瓣1.8萬短評爬取

評論爆發期在8月25日-8月30日,為什麼呢?8月25日是週五,週末是情人節哈!8月25日之前受戰狼的影響?

python學習|《星際特工:千星之城》豆瓣1.8萬短評爬取

8月25日-8月30日電影評價的分佈情況:很差,較差,還行,推薦,力薦。

小編的程式碼依然很初淺,分享下給跟小編一樣的初學者,希望對你有所幫助,歡迎探討。

下一篇就是詞雲分析啦