Python3爬蟲獲取豆瓣讀書數(shù)據(jù)

2019-09-25 14:06 更新

本文轉(zhuǎn)載至知乎ID:Charles(白露未晞)知乎個人專欄

下載W3Cschool手機App,0基礎(chǔ)隨時隨地學(xué)編程>>戳此了解

導(dǎo)語

利用Python爬取豆瓣讀書的一些數(shù)據(jù),并對這些數(shù)據(jù)做一定的分析。

標(biāo)題可能改成類似“大數(shù)據(jù)時代如何科學(xué)有效地閱讀”這樣的題目更加引入矚目吧,hhhhh。

——>

對過程不感興趣的同學(xué)可以直接下拉到最后看結(jié)果~~~

相關(guān)文件

百度網(wǎng)盤下載鏈接: https://pan.baidu.com/s/1N8mWiDtf7WeBt-lxVPL1_g

密碼: s4xb

主要思路

利用Python的requests模塊和beautifulsoup模塊來爬取豆瓣讀書的數(shù)據(jù),并對這些數(shù)據(jù)做一定的分析。

爬取的數(shù)據(jù)包括:

豆瓣圖書各個分類中所有書籍的'書名', '作者/譯者', '出版信息', '星級', '評分', '評價人數(shù)', '簡介', '相應(yīng)的豆瓣鏈接'。

例如:


同時,通過爬取的豆瓣鏈接對具體書籍的質(zhì)量做一定的分析,分析包括

制作熱評詞云、對熱評進(jìn)行簡單的情感分析。

有需要者可自行修改源代碼進(jìn)行更多的數(shù)據(jù)分析

說明

(1)因為豆瓣嚴(yán)格限制爬蟲,且實際使用時也沒有必要爬取所有分類的圖書資料,給豆瓣服務(wù)器帶來不必要的壓力,因此我給出的源代碼一次僅能爬取一個小類的圖書資料,且為單進(jìn)程。

(2)在相關(guān)文件中,本人已經(jīng)提供了爬取到的上百個分類的幾萬本圖書數(shù)據(jù),供有需要者參考。

PS:

建筑、漫畫、日本漫畫、耽美這四個小類的數(shù)據(jù)寫入excel時拋出異常,因此暫時無法提供數(shù)據(jù)。

開發(fā)工具

Python版本:3.5.4

相關(guān)模塊

requests模塊、jieba模塊、BeautifulSoup模塊、openpyxl模塊、matplotlib模塊、wordcloud模塊、snownlp模塊以及一些Python自帶的模塊。

環(huán)境搭建

安裝Python并添加到環(huán)境變量,pip安裝需要的相關(guān)模塊即可。

前期準(zhǔn)備

以chrome瀏覽器為例。



使用演示1

演示內(nèi)容:

爬取某個小類所有相關(guān)書籍基本信息。

截圖如下:


按照提示進(jìn)行輸入,輸入完成后按下回車鍵即可。

最后結(jié)果將保存在results文件夾中:


結(jié)果展示1

分析內(nèi)容為

挑選其中幾類利用excel的統(tǒng)計功能對獲得的數(shù)據(jù)進(jìn)行簡單的分析。

以名著類為例:

評分分布圖:


評分Top10:

世界童話名著連環(huán)畫

坂田榮男圍棋全集(共12冊)

世界文學(xué)名著連環(huán)畫 歐美部分(全十冊)

三國演義

細(xì)說紅樓夢 1-80回

世界文學(xué)名著連環(huán)畫(亞非部分全五冊)

算術(shù)探索 

三國演義(繪畫本1-5) 

四大名著(套裝全4冊)

紅樓夢

熱度(評論人數(shù))Top10:

圍城

不能承受的生命之輕

紅樓夢

百年孤獨

簡愛

傲慢與偏見

月亮和六便士

邊城

霍亂時期的愛情

更多內(nèi)容請自行下載相關(guān)文件中提供的數(shù)據(jù)根據(jù)個人喜好進(jìn)行分析選擇。

使用演示2

演示內(nèi)容為:

對具體書籍制作豆瓣熱評詞云并對豆瓣熱評進(jìn)行簡單的情感分析。

截圖如下:


鏈接地址都保存到了excel表中,復(fù)制粘貼即可。

如下圖所示:


結(jié)果展示2

分析內(nèi)容為

爬取豆瓣讀書中具體一本書的前20頁短評,并制作成詞云,同時對這些短評進(jìn)行簡單的情感分析。

以《統(tǒng)計學(xué)習(xí)方法》為例:

詞云:



情感分析:



數(shù)值較大說明情感偏積極,否則情感偏消極。

更多

本人不是專業(yè)做數(shù)據(jù)分析的~~~

所以分析的有些稚嫩~~~

歡迎專業(yè)人士指導(dǎo)補充~~~


以上內(nèi)容是否對您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號
微信公眾號

編程獅公眾號