Python爬取网易云歌曲评论实现词云图

 更新时间:2022年06月02日 14:41:24   作者:松鼠爱吃饼干  
这篇文章主要为大家介绍了Python爬取网易云歌曲评论实现词云分析,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪

前言

emmmm 没什么说的,想说的都在代码里

环境使用

Python 3.8 解释器 3.10

Pycharm 2021.2 专业版

selenium 3.141.0

本次要用到selenium模块,所以请记得提前下载好浏览器驱动,配置好环境

代码实现

先是安装、导入所需模块

from selenium import webdriver  # 导入浏览器的功能
import re   # 正则表达式模块, 内置
import time   # 时间模块, 程序延迟

1. 创建一个浏览器对象

driver = webdriver.Chrome()

2. 执行自动化

driver.get('https://music.163.com/#/song?id=488249475')
# selenium无法直接获取到嵌套页面里面的数据
driver.switch_to.frame(0)  # switch_to.frame()  切换到嵌套网页
driver.implicitly_wait(10)  # 让浏览器加载的时候, 等待渲染页面

下拉页面, 直接下拉到页面的底部

js = 'document.documentElement.scrollTop = document.documentElement.scrollHeight'
driver.execute_script(js)

3.解析数据

divs = driver.find_elements_by_css_selector('.itm') 
# 所有div  css语法: 定位到 html 数据/xpath/正则
for div in divs:
    cnt = div.find_element_by_css_selector('.cnt.f-brk').text
    cnt = re.findall(':(.*)', cnt)[0]  # 中英文有区别
    print(cnt)

保存数据

翻页

for page in range(10):  # 控制翻页  速度太快
    # 翻页 , 找到下一页标签, 点击?
    driver.find_element_by_css_selector('.znxt').click()
    time.sleep(1)
# selenium  欲速则不达

保存为txt文件

with open('contend.txt', mode='a', encoding='utf-8') as f:
    f.write(cnt + '\n')

运行代码得到结果

再做个词云

导入相关模块

import jieba  # 中文分词库  pip install jieba
import wordcloud  # 制作词云图的模块  pip install wordcloud
import imageio

读取文件数据

with open('contend.txt', mode='r', encoding='utf-8') as f:
    txt = f.read()
print(txt)

词云图 分词<中文(词语)> 基于结果

txt_list = jieba.lcut(txt)
print('分词结果:', txt_list)

合并

string_ = ' '.join(txt_list)  # 1 + 1 = 2   字符串的基本语法
print('合并分词:', string_)

创建词云图

wc = wordcloud.WordCloud(
    width=1000,  # 图片的宽
    height=800,  # 图片的高
    background_color='white',  # 图片的背景色
    font_path='msyh.ttc',  # 微软雅黑
    scale=15,  # 词云图默认的字体大小
    # mask=img,  # 指定词云图的图片
    # 停用词&lt; 语气词, 助词,....
    stopwords=set([line.strip() for line in open('cn_stopwords.txt', mode='r', encoding='utf-8').readlines()] )
)
print('正在绘制词云图...')
wc.generate(string_)  # 绘制词云图
wc.to_file('out.png')  # 保存词云图
print('词云图绘制完成...')

最后效果

以上就是Python爬取网易云歌曲评论实现词云分析的详细内容,更多关于Python爬取歌曲评论词云分析的资料请关注脚本之家其它相关文章!

相关文章

  • 一文带你轻松搞定Python正则匹配

    一文带你轻松搞定Python正则匹配

    在python 中,正则匹配用到的还是挺多的,下面这篇文章主要给大家介绍了关于Python正则匹配的相关资料,文中通过代码介绍的非常详细,需要的朋友可以参考下
    2024-08-08
  • 详解Python魔法方法之描述符类

    详解Python魔法方法之描述符类

    今天带大家复习一下python描述符类的相关知识,文中有非常详细的代码示例,对正在学习python的小伙伴们有很好地帮助,需要的朋友可以参考下
    2021-05-05
  • python中的gunicorn配置和使用教程

    python中的gunicorn配置和使用教程

    这篇文章主要介绍了python中的gunicorn配置和使用教程,本文通过示例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2023-06-06
  • 用Python代码来解图片迷宫的方法整理

    用Python代码来解图片迷宫的方法整理

    这篇文章主要介绍了用Python代码来解图片迷宫的方法整理,本文精选了StackOverflow相关人气问题上的几个回答,需要的朋友可以参考下
    2015-04-04
  • Python获取网络时间戳的两种方法详解

    Python获取网络时间戳的两种方法详解

    在我们进行注册码的有效期验证时,通常使用获取网络时间的方式来进行比对。本文将介绍两种利用Python获取网络时间戳的方法,感兴趣的可以了解一下
    2022-01-01
  • 使paramiko库执行命令时在给定的时间强制退出功能的实现

    使paramiko库执行命令时在给定的时间强制退出功能的实现

    这篇文章主要介绍了使paramiko库执行命令时,在给定的时间强制退出,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2021-03-03
  • python Gunicorn服务器使用方法详解

    python Gunicorn服务器使用方法详解

    这篇文章主要介绍了python Gunicorn服务器使用方法详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2019-07-07
  • Python读取指定日期邮件的实例

    Python读取指定日期邮件的实例

    今天小编就为大家分享一篇Python读取指定日期邮件的实例,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2019-02-02
  • python字典如何获取最大和最小value对应的key

    python字典如何获取最大和最小value对应的key

    这篇文章主要介绍了python字典如何获取最大和最小value对应的key问题,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-11-11
  • Python django导出excel详解

    Python django导出excel详解

    这篇文章主要介绍了Python django导出excel的方法 ,分享了相关代码示例,小编觉得还是挺不错的,具有一定借鉴价值,需要的朋友可以参考下
    2021-11-11

最新评论