python从入门到放弃篇44(selenium库,wordcloud库,matplotlib库)爬取新浪新闻,并用Jupyter notebook编辑器进行词云可视化

今天,研究了一波中文词云可视化,跟大家分享一波。最近事情有点多,时间有点不够用,所以,可能会延迟发文,请大家谅解。

我们这次案例的网址是:https://www.sina.com.cn/。我们点击链接进去后,看见如下画面:
在这里插入图片描述
因为,我们这次爬的是新闻。所以,我们选择右手边的新闻,如下图:
在这里插入图片描述
我们要把这个框框内的新闻爬取下来,先观察页面,使用检查功能或者是按键盘上的功能键F12
在这里插入图片描述
所以,代码如下图:

from selenium import webdriver#从selenium库里面导入webdriver模块

url = 'http://www.sina.com.cn'#定义爬取地址

options = webdriver.ChromeOptions()#开启(万花筒模式)无界面模式
options.add_argument('--headless')#添加配置参数
options.add_argument('--disable-gpu')#添加配置参数

driver = webdriver.Chrome(options=options)#将配置好的参数进行传递
driver.get(url)#发送get请求,请求网页
driver.implicitly_wait(3)#设置浏览器响应时间为3秒
div = driver.find_element_by_xpath('//*[@id="wwwidx_imp_con"]/div[2]').text#选择新闻框的全部内容
#print(div)
with open('D:/pycharm_project/新浪新闻.txt','a',encoding='utf-8') as f:#以追加的方式写入文件,设置编码方式为utf-8
    f.write(div)#把内容写入文件

运行结果,打开文件如下图:
在这里插入图片描述
接着,我们爬取到文件后,用jupyter notebook编辑器,现在就开始词云可视化,所以有:

from wordcloud import WordCloud#从wordcloud库中导入WordCloud模块
from matplotlib import pyplot as plt#从matplotlib库中导入pyplot模块,取别名为plt
with open('D:/pycharm_project/新浪新闻.txt','r+',encoding='utf-8') as f:#打开文件,新浪新闻.txt,以可读可写的方式打开,以'utf-8'的方式编码。
    text = f.read()#读取文本内容
wc = WordCloud(font_path='C:/Windows/Fonts/simsun.ttc',background_color='White').generate(text)#设置选择中文字体的位置,设置词云背景色,传入文本内容
%pylab inline
plt.imshow(wc,interpolation='bilinear')#展示词云
plt.axis("off")#使刻度线条消失

字体设置的位置,如下图:
在这里插入图片描述

运行结果,出现了理想中的词云,感觉很不错。
在这里插入图片描述
最后,感谢大家前来观看鄙人的文章,文中或有诸多不妥之处,还望指出和海涵。

  • 1
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

不羁_神话

感谢支持,欢迎交流。

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值