Python爬取網(wǎng)易云歌曲評(píng)論實(shí)現(xiàn)詞云圖_第1頁(yè)
Python爬取網(wǎng)易云歌曲評(píng)論實(shí)現(xiàn)詞云圖_第2頁(yè)
Python爬取網(wǎng)易云歌曲評(píng)論實(shí)現(xiàn)詞云圖_第3頁(yè)
Python爬取網(wǎng)易云歌曲評(píng)論實(shí)現(xiàn)詞云圖_第4頁(yè)
Python爬取網(wǎng)易云歌曲評(píng)論實(shí)現(xiàn)詞云圖_第5頁(yè)
全文預(yù)覽已結(jié)束

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

第Python爬取網(wǎng)易云歌曲評(píng)論實(shí)現(xiàn)詞云圖目錄前言環(huán)境使用代碼實(shí)現(xiàn)先是安裝、導(dǎo)入所需模塊1.創(chuàng)建一個(gè)瀏覽器對(duì)象2.執(zhí)行自動(dòng)化下拉頁(yè)面,直接下拉到頁(yè)面的底部3.解析數(shù)據(jù)保存數(shù)據(jù)翻頁(yè)保存為txt文件運(yùn)行代碼得到結(jié)果再做個(gè)詞云導(dǎo)入相關(guān)模塊讀取文件數(shù)據(jù)詞云圖分詞中文(詞語(yǔ))基于結(jié)果合并創(chuàng)建詞云圖最后效果

前言

emmmm沒什么說(shuō)的,想說(shuō)的都在代碼里

環(huán)境使用

Python3.8解釋器3.10

Pycharm2025.2專業(yè)版

selenium3.141.0

本次要用到selenium模塊,所以請(qǐng)記得提前下載好瀏覽器驅(qū)動(dòng),配置好環(huán)境

代碼實(shí)現(xiàn)

先是安裝、導(dǎo)入所需模塊

fromseleniumimportwebdriver#導(dǎo)入瀏覽器的功能

importre#正則表達(dá)式模塊,內(nèi)置

importtime#時(shí)間模塊,程序延遲

1.創(chuàng)建一個(gè)瀏覽器對(duì)象

driver=webdriver.Chrome()

2.執(zhí)行自動(dòng)化

driver.get('/#/songid=488249475')

#selenium無(wú)法直接獲取到嵌套頁(yè)面里面的數(shù)據(jù)

driver.switch_to.frame(0)#switch_to.frame()切換到嵌套網(wǎng)頁(yè)

driver.implicitly_wait(10)#讓瀏覽器加載的時(shí)候,等待渲染頁(yè)面

下拉頁(yè)面,直接下拉到頁(yè)面的底部

js='document.documentElement.scrollTop=document.documentElement.scrollHeight'

driver.execute_script(js)

3.解析數(shù)據(jù)

divs=driver.find_elements_by_css_selector('.itm')

#所有divcss語(yǔ)法:定位到html數(shù)據(jù)/xpath/正則

fordivindivs:

cnt=div.find_element_by_css_selector('.cnt.f-brk').text

cnt=re.findall(':(.*)',cnt)[0]#中英文有區(qū)別

print(cnt)

保存數(shù)據(jù)

翻頁(yè)

forpageinrange(10):#控制翻頁(yè)速度太快

#翻頁(yè),找到下一頁(yè)標(biāo)簽,點(diǎn)擊

driver.find_element_by_css_selector('.znxt').click()

time.sleep(1)

#selenium欲速則不達(dá)

保存為txt文件

withopen('contend.txt',mode='a',encoding='utf-8')asf:

f.write(cnt+'\n')

運(yùn)行代碼得到結(jié)果

再做個(gè)詞云

導(dǎo)入相關(guān)模塊

importjieba#中文分詞庫(kù)pipinstalljieba

importwordcloud#制作詞云圖的模塊pipinstallwordcloud

importimageio

讀取文件數(shù)據(jù)

withopen('contend.txt',mode='r',encoding='utf-8')asf:

txt=f.read()

print(txt)

詞云圖分詞中文(詞語(yǔ))基于結(jié)果

txt_list=jieba.lcut(txt)

print('分詞結(jié)果:',txt_list)

合并

string_=''.join(txt_list)#1+1=2字符串的基本語(yǔ)法

print('合并分詞:',string_)

創(chuàng)建詞云圖

wc=wordcloud.WordCloud(

width=1000,#圖片的寬

height=800,#圖片的高

background_color='white',#圖片的背景色

font_path='msyh.ttc',#微軟雅黑

scale=15,#詞云圖默認(rèn)的字體大小

#mask=img,#指定詞云圖的圖片

#停用詞語(yǔ)氣詞,助詞,

stopwords=set([line.strip()forlineinopen('cn_stopwords.txt',mode='r',encoding='utf-8').readlines()])

print('正在繪制詞云圖...')

wc.generate(string_)#繪制詞云圖

wc.to_file('out.png')

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論