Python爬取百度春節(jié)祝福語并生成心形詞云
前言
最近剛好在看爬蟲,就爬取一下春節(jié)祝福語,生成個(gè)詞云玩一玩,大家有興趣可以試試,會(huì)奉上源代碼,很簡(jiǎn)單。效果圖如下:
環(huán)境
環(huán)境:windows,
語言:python,python版本是3.7
所依賴的第三方包:
selenium----爬取網(wǎng)站,收集祝福語,這個(gè)庫做UI自動(dòng)化測(cè)試的估計(jì)會(huì)比較常見,我這里沒采用使用requests庫去爬取,用這個(gè)庫的好處是爬取的過程中頁面是實(shí)時(shí)可見的
wordcloud---用來生成詞云
PIL---使詞云生成想要的輪廓, 這里注意python3.7安裝的時(shí)候應(yīng)該使用pip install pillow
numpy---生成那種有輪廓的詞云,還需要安裝這個(gè)包,這個(gè)包將給出形狀的圖片表示為一個(gè)大型矩陣
jieba---詞云生成的詞默認(rèn)是英文,因我們爬取的祝福語是中文,需要用這個(gè)庫能識(shí)別中文,防止中文亂碼
思路
(1)我爬取百度,搜索到關(guān)于春節(jié)祝福語,然后把這些祝福語存放到一個(gè)文件中。詳細(xì)如下:
這里用到了selenium的webdriver, 使用的瀏覽器是firefox, 創(chuàng)建了一個(gè)firefox瀏覽器對(duì)象,然后firefox打開百度,定位到百度輸入框,輸入搜索詞--新春祝福2022,瀏覽器頁面顯示如下
在這個(gè)頁面,我模擬人工點(diǎn)擊這第一個(gè)搜索出來的結(jié)果,跳到其他網(wǎng)址頁面,如圖
把這個(gè)頁面的所有祝福語獲取到,存到wishes.txt文件中
(2)然后用生成詞云的相關(guān)庫,來解析這個(gè)文件,生成詞云 這里注意一點(diǎn)的是,生成詞云使用的中文字體, font_path使用的是windows的字體庫,這里你可以換成其他的字體
word_cloud = WordCloud(mask=mask, font_path='C:\Windows\Fonts\STXINGKA.TTF').generate(text)
windows 字體庫
源代碼
注
可以修改背景顏色和字題顏色,例如
word_cloud = WordCloud(mask=mask, background_color='white', contour_color='red', colormap='brg', max_words=600, font_path='C:\Windows\Fonts\STXINGKA.TTF').generate(text)
重新運(yùn)行之后,如圖
支持的colormap字體顏色集,可參考以下鏈接
到此這篇關(guān)于Python爬取百度春節(jié)祝福語并生成心形詞云的文章就介紹到這了,更多相關(guān)Python爬取祝福語內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Django-xadmin后臺(tái)導(dǎo)入json數(shù)據(jù)及后臺(tái)顯示信息圖標(biāo)和主題更改方式
這篇文章主要介紹了Django-xadmin后臺(tái)導(dǎo)入json數(shù)據(jù)及后臺(tái)顯示信息圖標(biāo)和主題更改方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2020-03-03Python腳本實(shí)現(xiàn)自動(dòng)登錄校園網(wǎng)
今天給大家?guī)淼氖顷P(guān)于Python的相關(guān)知識(shí),文章圍繞著如何使用Python腳本實(shí)現(xiàn)自動(dòng)登錄校園網(wǎng)展開,文中有非常詳細(xì)的介紹及代碼示例,需要的朋友可以參考下2021-06-06將labelme格式數(shù)據(jù)轉(zhuǎn)化為標(biāo)準(zhǔn)的coco數(shù)據(jù)集格式方式
今天小編就為大家分享一篇將labelme格式數(shù)據(jù)轉(zhuǎn)化為標(biāo)準(zhǔn)的coco數(shù)據(jù)集格式方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2020-02-02利用Python實(shí)現(xiàn)繪制3D愛心的代碼分享
最近你是否也被李峋的愛心跳動(dòng)代碼所感動(dòng),心動(dòng)不如行動(dòng),相同的代碼很多,我們今天換一個(gè)玩法!構(gòu)建一個(gè)三維的跳動(dòng)愛心!嗯!這篇博客本著開源的思想!不是說誰對(duì)浪漫過敏的2022-11-11詳解Python中生成隨機(jī)數(shù)據(jù)的示例詳解
在日常工作編程中存在著各種隨機(jī)事件,同樣在編程中生成隨機(jī)數(shù)字的時(shí)候也是一樣。每當(dāng)在?Python?中生成隨機(jī)數(shù)據(jù)、字符串或數(shù)字時(shí),最好至少大致了解這些數(shù)據(jù)是如何生成的。所以本文將詳細(xì)為大家講解一下Python是如何生成隨機(jī)數(shù)據(jù),需要的可以參考一下2022-04-04Python函數(shù)式編程之面向過程面向?qū)ο蠹昂瘮?shù)式簡(jiǎn)析
這一番我們要學(xué)習(xí)點(diǎn)有難度的了,因此將降低閱讀與理解難度,盡量采用大白話為你鋪墊,因?yàn)樯婕暗囊恍└拍钜彩墙梃b的其它編程語言的風(fēng)格,而且實(shí)際落地中存在部分爭(zhēng)議不過多學(xué)一點(diǎn),總是沒有壞處的2021-09-09