【python】python新闻数据抓取情感分析可视化(源码+数据)【独一无二】

简介: 【python】python新闻数据抓取情感分析可视化(源码+数据)【独一无二】

一、设计目的

实现一个用于从特定新闻网站获取新闻内容,然后对新闻内容进行情感分析和词频统计,并生成词云图,以便了解新闻的情感倾向和主题关键词。


1.获取新闻内容:通过使用 requests库 抓取特定新闻页面的内容。

0613270ecd9f48c5b518c0ad840cef77.png


2.本地文件操作:将获取的新闻内容保存到本地文件,以备后续处理。

72cbfb0f5d994f5e887c25642ffe6232.png


3.数据清洗:对获取的新闻内容进行简单的清洗,去除空格和换行符等干扰信息。


4.中文分词及词频统计:利用jieba分词库对新闻内容进行分词,并统计每个词出现的频率,以便了解新闻的主题关键词。


5.生成词云:根据词频统计结果生成词云图,直观展示新闻内容中的关键词。


6.情感分析:利用 SnowNLP 库对新闻内容进行情感分析,得出新闻的情感倾向,以便了解新闻对于产品或品牌的积极性或消极性。


二、功能展示

2.1 词频展示

词频:这些词语是在新闻内容中出现频率词汇,给出了每个词出现的次数。

关键字:原  次数:1
关键字:标题  次数:1
关键字::  次数:5
关键字:争议  次数:5
关键字:“  次数:34
关键字:五一  次数:10
关键字:调休  次数:61
关键字:”  次数:34
关键字:背后  次数:3
关键字:真  次数:1
关键字:问题  次数:13
关键字:亟需  次数:1
关键字:解决  次数:6
关键字:   次数:2
关键字:节假日  次数:14
关键字:还  次数:3
关键字:能  次数:4
关键字:增加  次数:11
关键字:吗  次数:2
关键字:?  次数:4
关键字:【  次数:1
关键字:本文  次数:1
关键字:资料  次数:1
关键字:来源于  次数:1
关键字:央视网  次数:2
关键字:、  次数:28
关键字:浙江  次数:3
关键字:宣传  次数:3
关键字:顶端  次数:2
关键字:新闻  次数:4
关键字:界面  次数:2
关键字:等  次数:5
关键字:】  次数:1
关键字:近些年  次数:1
关键字:,  次数:208
关键字:一直  次数:1
关键字:处在  次数:1
关键字:舆论  次数:3
关键字:的  次数:117
关键字:风口浪尖  次数:1
关键字:而  次数:7
关键字:今年  次数:1
关键字:关于  次数:1
关键字:讨论  次数:3
关键字:尤为  次数:1
关键字:热烈  次数:1
关键字:。  次数:76
关键字:其实  次数:1

👉👉👉 源码获取 关注【测试开发自动化】公众号,回复 “ 新分 ” 获取。👈👈👈


2.2 词云展示

👉👉👉 源码获取 关注【测试开发自动化】公众号,回复 “ 新分 ” 获取。👈👈👈


2.2 分析结果

情感得分:这是针对整个新闻内容进行的情感分析,得到的一个分数,用来表明新闻内容的整体情感倾向。

Sentiment score: 1.0

三、代码分析

好的,下面我将对每个实现思路进行说明,并附上对应的代码块:


  1. 获取新闻内容
def get_news():
    # 略.... > 👉👉👉 源码获取 关注【测试开发自动化】公众号,回复 “  新分 ” 获取。👈👈👈
    
    with open('news.txt', 'w', encoding='utf-8') as f:
        f.write(text)
        f.close()

if __name__ == "__main__":
    get_news()

👉👉👉 源码获取 关注【测试开发自动化】公众号,回复 “ 新分 ” 获取。👈👈👈


  1. 解析网页
# 解析网页部分已经包含在获取新闻内容的代码块中
# 使用了requests库发送HTTP请求获取网页内容


  1. 保存到本地文件
# 保存到本地文件的代码块
# 将提取的新闻内容保存到本地文件"news.txt"
with open('news.txt', 'w', encoding='utf-8') as f:
    f.write(text)
    f.close()


  1. 数据清洗
# 数据清洗的函数
def clean_text(text):
       # 略.... > 👉👉👉 源码获取 关注【测试开发自动化】公众号,回复 “  新分 ” 获取。👈👈👈

# 在主函数中调用数据清洗函数
text = clean_text(text)

👉👉👉 源码获取 关注【测试开发自动化】公众号,回复 “ 新分 ” 获取。👈👈👈


  1. 中文分词及词频统计
# 中文分词及词频统计的函数
def get_word_frequency(text):
    # 略.... > 👉👉👉 源码获取 关注【测试开发自动化】公众号,回复 “  新分 ” 获取。👈👈👈
    return counter

frequencies = get_word_frequency(text)


  1. 生成词云
# 生成词云的函数
def create_wordcloud(frequencies):
    # 略.... > 👉👉👉 源码获取 关注【测试开发自动化】公众号,回复 “  新分 ” 获取。👈👈👈
    # 略....
    plt.axis("off")
    plt.show()

create_wordcloud(frequencies)


  1. 情感分析
# 情感分析的函数
def sentiment_analysis(text):
    s = SnowNLP(text)
    return s.sentiments

# 在主函数中调用情感分析函数
sentiment = sentiment_analysis(text)
print(f'Sentiment score: {sentiment}')


👉👉👉 源码获取 关注【测试开发自动化】公众号,回复 “ 新分 ” 获取。👈👈👈

相关文章
|
18天前
|
数据采集 数据可视化 数据挖掘
利用Python自动化处理Excel数据:从基础到进阶####
本文旨在为读者提供一个全面的指南,通过Python编程语言实现Excel数据的自动化处理。无论你是初学者还是有经验的开发者,本文都将帮助你掌握Pandas和openpyxl这两个强大的库,从而提升数据处理的效率和准确性。我们将从环境设置开始,逐步深入到数据读取、清洗、分析和可视化等各个环节,最终实现一个实际的自动化项目案例。 ####
|
14天前
|
数据可视化 编译器 Python
Manim:数学可视化的强大工具 | python小知识
Manim(Manim Community Edition)是由3Blue1Brown的Grant Sanderson开发的数学动画引擎,专为数学和科学可视化设计。它结合了Python的灵活性与LaTeX的精确性,支持多领域的内容展示,能生成清晰、精确的数学动画,广泛应用于教育视频制作。安装简单,入门容易,适合教育工作者和编程爱好者使用。
74 7
|
16天前
|
数据采集 分布式计算 大数据
构建高效的数据管道:使用Python进行ETL任务
在数据驱动的世界中,高效地处理和移动数据是至关重要的。本文将引导你通过一个实际的Python ETL(提取、转换、加载)项目,从概念到实现。我们将探索如何设计一个灵活且可扩展的数据管道,确保数据的准确性和完整性。无论你是数据工程师、分析师还是任何对数据处理感兴趣的人,这篇文章都将成为你工具箱中的宝贵资源。
|
27天前
|
存储 数据可视化 数据挖掘
使用Python进行数据分析和可视化
本文将引导你理解如何使用Python进行数据分析和可视化。我们将从基础的数据结构开始,逐步深入到数据处理和分析的方法,最后通过实际的代码示例来展示如何创建直观的数据可视化。无论你是初学者还是有经验的开发者,这篇文章都将为你提供有价值的见解和技巧。让我们一起探索数据的世界,发现隐藏在数字背后的故事!
|
Linux C语言 开发者
源码安装Python学会有用还能装逼 | 解决各种坑
相信朋友们都看过这个零基础学习Python的开篇了
455 0
源码安装Python学会有用还能装逼 | 解决各种坑
|
16天前
|
人工智能 数据可视化 数据挖掘
探索Python编程:从基础到高级
在这篇文章中,我们将一起深入探索Python编程的世界。无论你是初学者还是有经验的程序员,都可以从中获得新的知识和技能。我们将从Python的基础语法开始,然后逐步过渡到更复杂的主题,如面向对象编程、异常处理和模块使用。最后,我们将通过一些实际的代码示例,来展示如何应用这些知识解决实际问题。让我们一起开启Python编程的旅程吧!
|
15天前
|
存储 数据采集 人工智能
Python编程入门:从零基础到实战应用
本文是一篇面向初学者的Python编程教程,旨在帮助读者从零开始学习Python编程语言。文章首先介绍了Python的基本概念和特点,然后通过一个简单的例子展示了如何编写Python代码。接下来,文章详细介绍了Python的数据类型、变量、运算符、控制结构、函数等基本语法知识。最后,文章通过一个实战项目——制作一个简单的计算器程序,帮助读者巩固所学知识并提高编程技能。
|
3天前
|
Unix Linux 程序员
[oeasy]python053_学编程为什么从hello_world_开始
视频介绍了“Hello World”程序的由来及其在编程中的重要性。从贝尔实验室诞生的Unix系统和C语言说起,讲述了“Hello World”作为经典示例的起源和流传过程。文章还探讨了C语言对其他编程语言的影响,以及它在系统编程中的地位。最后总结了“Hello World”、print、小括号和双引号等编程概念的来源。
98 80
下一篇
DataWorks