请帮我写一个python程序 它的功能为从百度新闻获取新闻文本,并将其分词、统计词频,最后生成词云图
时间: 2024-05-02 15:19:37 浏览: 9
好的,下面是一个简单的Python程序,它可以从百度新闻获取新闻文本,然后对文本进行分词、统计词频,并生成词云图。
```python
import requests
import jieba
from wordcloud import WordCloud
import matplotlib.pyplot as plt
# 获取新闻文本
url = 'https://news.baidu.com/'
response = requests.get(url)
html = response.content.decode('utf-8')
# 提取文本内容
text = ''
for i in html.split('\n'):
if '<a href=' in i:
text += i
# 分词
words = jieba.cut(text, cut_all=True)
# 统计词频
word_dic = {}
for word in words:
if len(word) > 1:
word_dic[word] = word_dic.get(word, 0) + 1
# 生成词云图
wc = WordCloud(font_path='simhei.ttf', max_words=2000, max_font_size=100, background_color="white")
wc.generate_from_frequencies(word_dic)
plt.imshow(wc, interpolation="bilinear")
plt.axis("off")
plt.show()
```
上述代码需要先安装 `requests` 、 `jieba` 和 `wordcloud` 三个库。安装方法如下:
```bash
pip install requests jieba wordcloud
```
运行之后程序会从百度新闻获取最新的新闻文本,然后对文本进行分词、统计词频,并生成词云图。其中,`font_path` 参数是指词云图使用的字体文件,你需要将 `simhei.ttf` 文件放入程序所在目录下。
相关推荐
![py](https://img-home.csdnimg.cn/images/20210720083646.png)
![py](https://img-home.csdnimg.cn/images/20210720083646.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)