前言 文的文字及圖片來源於網路,僅供學習、交流使用,不具有任何商業用途,版權歸原作者所有,如有問題請及時聯繫我們以作處理。 這篇文章中向大家介紹了Python繪製詞雲的方法,不難看出繪製詞雲可以說是一個“吃瓜神器”,它可以讓我們直觀的看到新聞的核心內容。那麼對於今天的大新聞,我們就繼續用Python ...
前言
文的文字及圖片來源於網路,僅供學習、交流使用,不具有任何商業用途,版權歸原作者所有,如有問題請及時聯繫我們以作處理。
這篇文章中向大家介紹了Python繪製詞雲的方法,不難看出繪製詞雲可以說是一個“吃瓜神器”,它可以讓我們直觀的看到新聞的核心內容。那麼對於今天的大新聞,我們就繼續用Python繪製詞雲的“正確姿勢”來一起吃瓜吧~
廢話不多說,上代碼
# 導入依賴模塊 import json import requests import jieba import pandas as pd import wordcloud import numpy as np import PIL.Image as image import matplotlib.pyplot as plt from pandas.io.json import json_normalize # 請求頭 headers = {'user-agent': 'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/80.0.3987.106 Safari/537.36'} # 評論地址 url="http://comment.api.163.com/api/v1/products/a2869674571f77b5a0867c3d71db5856/threads/FASTLQ7I00038FO9/comments/newList?ibc=newspc&limit=30&showLevelThreshold=72&headLimit=1&tailLimit=2&offset={}" # 迴圈爬取 df = pandas.DataFrame(None) i = 0 while True: ret = requests.get(url.format(str(i*30)), headers=headers) text = ret.text result = json.loads(text) t = result['comments'].values() s = json_normalize(t) i += 1 if len(s) == 0: print("爬取結束") break else: df = df.append(s) print("第{}頁爬取完畢".format(i)) # 評論去重 df=df.drop_duplicates('commentId').reset_index(drop=True) # 評論分詞 word = [ y for x in df.content.tolist() for y in list(jieba.cut(x)) ] # 讀取詞雲模板 mask = np.array(image.open("D:/gua.jpg")) # 設置停用詞 stopword=[ '一個','這個','不是','就是','沒有','什麼','這麼','這樣', '這種','怎麼','斜眼','微笑','噴水','大笑','跟帖','br' ] # 設置詞雲圖層屬性 wd=wordcloud.WordCloud(font_path='C:/windows/fonts/simhei.ttf', stopwords=stopword, mask=mask, collocations=False) # 創建詞雲對象 wd=wd.generate(",".join(word)) # 將詞雲模板的顏色設置為輸出詞雲的顏色 image_colors = wordcloud.ImageColorGenerator(mask) # 從背景圖建立顏色方案 wd.recolor(color_func=image_colors) # 繪製詞雲 plt.imshow(wd) # 隱藏坐標軸 plt.axis('off') # 畫圖 plt.show()
實現效果圖
給位觀眾,這個瓜可還可口?
如果你處於想學Python或者正在學習Python,Python的教程不少了吧,但是是最新的嗎?說不定你學了可能是兩年前人家就學過的內容,在這小編分享一波2020最新的Python教程。獲取方式,私信小編 “ 資料 ”,即可免費獲取哦!