Python词云#疫情退去后,你最想做什么
“等疫情過去,等我回家,抱抱爸媽,拉著他們?nèi)ズ舆吷⒉?#xff0c;聽他們嘮叨,再也不還嘴。我愛你們,希望你們知道。”
“去公園跑步高呼,太憋了,人都要發(fā)霉了。”
“去見城南朋友,聊聊昨天失敗的表白。”
“回杭后,要見周先生。”
以上內(nèi)容,均來自“豆瓣”熱門話題#冠狀疫情退去后的第一天你打算做什么#
本文爬取了該話題下的短評數(shù)據(jù),進(jìn)行高頻詞統(tǒng)計(jì)和詞云可視化,來分析大家在疫情之后,最想念誰,最想做什么?
01.
保存短評數(shù)據(jù)
通過瀏覽器“檢查”分析,得到URL數(shù)據(jù)接口。在不斷往下刷新頁面的過程中,發(fā)現(xiàn)URL中只有“start”參數(shù)不斷產(chǎn)生變化,依次為0,20,40,60,80---
同時(shí),為了破解“豆瓣”的防爬蟲機(jī)制,請求數(shù)據(jù)時(shí)需攜帶“請求頭(headers)”中的“User-Agent”和“Referer”兩個(gè)參數(shù)。
import?requestsfor?i?in?range(0,200,20):#?通過瀏覽器檢查,得到數(shù)據(jù)的URL來源鏈接url?=?'https://m.douban.com/rexxar/api/v2/gallery/topic/125573/items?'?\'sort=new&start={}&count=20&status_full_text=1&guest_only=0&ck=null'.format(i)#?破解防爬蟲,帶上請求頭#?這兩個(gè)不能省略headers?=?{'User-Agent':?'Mozilla/5.0?(Windows?NT?10.0;?Win64;?x64)?AppleWebKit/537.36?(KHTML,?like?Gecko)?Chrome/76.0".3809.100?Safari/537.36','Referer':?'https://www.douban.com/gallery/topic/125573/?from=gallery_trend&sort=hot'}#?發(fā)送請求,獲取響應(yīng)reponse?=?requests.get(url,?headers=headers)html?=?reponse.json()#?解析數(shù)據(jù),獲得短評#?保存到本地for?j?in?range(19):abs?=?html['items'][j]['abstract']with?open("want_after.txt",?"a",?encoding='utf-8')?as?f:f.write(abs)print(abs)02.
詞云可視化
把數(shù)據(jù)保存之后,需要利用“jieba”對數(shù)據(jù)進(jìn)行分詞;進(jìn)而,通過分詞后的數(shù)據(jù)繪制詞云“wordcloud”,可視化展示數(shù)據(jù)。
通過詞云,可以直觀的看到“吃火鍋”、“電影”、“朋友”、“奶茶”、“擁抱”、“疫情”等高頻的關(guān)鍵詞。
這也代表了我們大多數(shù)人的心愿。
03.
高頻詞統(tǒng)計(jì)
#?看看詞頻高的有哪些 process_word?=?WordCloud.process_text(wc,?text) sort?=?sorted(process_word.items(),?key=lambda?e:?e[1],?reverse=True) sort_after?=?sort[:50] print(sort_after)#?把數(shù)據(jù)存成csv文件 df?=?pd.DataFrame(sort_after) #?保證不亂碼 df.to_csv('sort_after.csv',?encoding='utf_8_sig')面朝大海,春暖花開。
后臺回復(fù)“陽光”
獲取文中涉及的全部源碼
總結(jié)
以上是生活随笔為你收集整理的Python词云#疫情退去后,你最想做什么的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 9个不为人知的Python技巧
- 下一篇: 推荐一些能能提高生产力的 Python