《無問西東》豆瓣短評分析

原文鏈接:《無問西東》豆瓣短評分析

微信公眾號:機器學習養成記 搜索添加微信公眾號:chenchenwings


電影《無問西東》講述了四代人清華人,在矛盾與期待中不斷找尋自我、砥礪前行的故事。上映後得到了廣泛的關注,也引發了強烈的討論。本文首先通過爬蟲技術,從豆瓣上獲得相關短評內容與打分,然後觀察打分分布,劃分正負偏好,最後進行分詞與關鍵詞提取,觀察正向、負向偏好之間關鍵詞差異。」

爬取豆瓣短評

尋找鏈接

首先在瀏覽器打開豆瓣主頁,搜索無問西東電影,可以看到下面的短評板塊,點擊「更多短評」可以進入短評的專屬頁面,此頁面是一個GET類的url:「movie.douban.com/subjec」,點擊「後頁」,觀察url的變化情況,可以發現每一頁顯示20條短評,通過改變url中start取值,可以轉換到不同的頁數,即第二頁短評url中start參數取值為20,因此,我們就找到了需要爬取的內容鏈接。

定位標籤

使用Chrome開發者工具,發現短評的內容在p標籤中,打分信息較為複雜,首先要找到class_=comment-item的div標籤,再找到裡面class=rating的span標籤,並根據標籤內容進行分數對應。

代碼實現

豆瓣做了相關限制,非登錄狀態下只能獲取每個電影的前220條。因此這裡以抓取前220頁短評內容為例,獲取短評內容及打分。

將文本與打分信息生成dataframe,並保存為csv文件,方便後續使用。

打分分布情況

得到了220條短評的打分數據,首先通過繪製柱狀圖,觀察各分數的比例分布。

可以看到,打2分的最多,其次為4分。這裡我們假設,4分、5分為正向偏好,1分、2分為負向偏好,3分為中立,下面分別對正向偏好和負向偏好做關鍵詞提取,觀察兩者間差別。

分詞與關鍵詞提取

分詞

中文分詞分為基於規則和基於統計兩大類,jieba分詞包結合了兩類方法,可以較方便的實現分詞。在分詞的同時,進行刪除停用詞的操作。

關鍵詞提取

jieba實現了TF-IDF和TextRank兩種關鍵詞提取演算法,指定關鍵詞個數、詞性,可返回關鍵詞和相應權重。

第一列代表了負向偏好的關鍵詞和權重,第二列代表了正向偏好和權重。可以看到,正負向偏好的關鍵詞有一定差異,負向偏好關鍵詞有「難看」,「看不下去」,「可惜」,「不行」等明顯否定傾向的詞,而正向偏好關鍵詞有「喜歡」,「好看」等可以反映出正向評論的詞。

後續操作

如上只是對於評價內容做了簡單的分析,自然語言分析分為許多方向並用廣泛應用。後續還可以進行如下操作豐富對此文本的分析:

1,畫詞雲,直觀看出正負向偏好關鍵詞的差異。

2.對正負向評論分別進行文本相似性分析。

3.通過機器學習演算法,訓練此向量,進行情感分析。


推薦文章:

用機器學習更快了解用戶(翻譯)

k折交叉驗證(R語言)

聚類(二):k-means演算法(R&python)

小案例(一):商業街抽獎

小案例(二):麵包是不是變輕了

小案例(三):調查問卷

小案例(四):銷售額下滑

微信公眾號:機器學習養成記 搜索添加微信公眾號:chenchenwings

weixin.qq.com/r/CEjawvr (二維碼自動識別)

掃描二維碼,關注我們。

如需轉載,請在開篇顯著位置註明作者和出處,並在文末放置機器學習養成記二維碼和添加原文鏈接。

快來關注我們吧!


推薦閱讀:

python爬蟲之圖片下載APP1.0
三種 Python 網路內容抓取工具與爬蟲
爬蟲工程師?
跟繁瑣的命令行說拜拜!Gerapy分散式爬蟲管理框架來襲!
簡單爬蟲的通用步驟

TAG:Python | python爬虫 | 文本挖掘 |