当前位置: 首页 > news >正文

使用Python和AkShare轻松获取新闻联播文字稿:从数据获取到文本挖掘

文章目录

    • 使用Python和AkShare轻松获取新闻联播文字稿:从数据获取到文本挖掘
      • 引言:新闻联播——不可忽视的信息金矿
      • 一、环境准备与AkShare安装
        • 1. 安装AkShare
        • 2. 验证安装
      • 二、核心操作:获取新闻联播文字稿
        • 1. **单日数据获取**
        • 2. **批量获取历史数据**
      • 三、实战应用:从数据到洞察
        • 1. **政策关键词分析**
        • 2. **事件驱动投资模型**
      • 四、高级技巧:文本挖掘与AI结合
        • 1. **词云可视化**
        • 2. **AI生成投资建议**(需OpenAI API)
      • 五、注意事项与优化方案
      • 结语:构建你的政策分析系统

使用Python和AkShare轻松获取新闻联播文字稿:从数据获取到文本挖掘


引言:新闻联播——不可忽视的信息金矿

新闻联播作为国内权威新闻节目,其内容对政策导向、市场趋势具有显著影响。据深交所统计,政策类新闻对相关板块的刺激效应平均持续21个交易日,如何高效获取并分析这些关键信息?Python库 AkShare 提供了完整的解决方案。


一、环境准备与AkShare安装

1. 安装AkShare

通过pip一键安装(需Python 3.6+环境):

pip install akshare --upgrade
2. 验证安装
import akshare as ak
print(ak.__version__)  # 需输出1.12.0及以上版本

二、核心操作:获取新闻联播文字稿

1. 单日数据获取

通过news_cctv接口指定日期(格式YYYYMMDD)获取当日全部新闻条目:

# 获取2025年7月11日新闻联播稿
news_df = ak.news_cctv(date="20250711")
print(news_df[['title', 'content']].head())

输出字段说明

  • date:新闻日期(格式YYYYMMDD
  • title:新闻标题
  • content:新闻全文内容
2. 批量获取历史数据

自动下载2016年2月3日至今的所有新闻稿(示例保存为CSV):

import datetimedef get_dates():start = datetime.datetime(2016, 2, 3)end = datetime.datetime.today()return [(start + datetime.timedelta(days=i)).strftime("%Y%m%d") for i in range((end - start).days + 1)]for date_str in get_dates():try:df = ak.news_cctv(date=date_str)df.to_csv(f"cctv_news_{date_str}.csv", index=False)except Exception as e:print(f"Failed for {date_str}: {str(e)}")

注意:完整历史数据约2500+天,批量下载需数小时


三、实战应用:从数据到洞察

1. 政策关键词分析

利用词频统计捕捉政策热点(示例使用jieba分词):

from collections import Counter
import jieba# 合并当日所有新闻内容
text = " ".join(news_df['content'].tolist())
words = [word for word in jieba.cut(text) if len(word) > 1]  # 过滤单字
keyword_freq = Counter(words).most_common(10)
print("Top10关键词:", keyword_freq)

典型应用场景

  • 30秒黄金法则:开篇30秒提及的行业,3个月内获政策红利概率达81%
  • 行业映射:如{"光刻胶": "半导体", "抽水蓄能": "绿电"}
2. 事件驱动投资模型

根据新闻类型预测市场反应:

新闻类型市场反应规律典型案例
重大会议提前3-6月布局2025年“新质生产力”催生机器人行情
外交成果次日高开概率72%中法新能源合作致比亚迪涨停
民生政策消费板块滞后反应保障房建设带动建材股季度涨45%

四、高级技巧:文本挖掘与AI结合

1. 词云可视化
from wordcloud import WordCloud
import matplotlib.pyplot as pltwc = WordCloud(font_path="simhei.ttf", width=800, height=400, background_color="white")
wc.generate_from_frequencies(dict(keyword_freq))
plt.imshow(wc)
plt.axis("off")
plt.show()

2025年7月11日新闻联播

2. AI生成投资建议(需OpenAI API)
from langchain.chat_models import ChatOpenAIllm = ChatOpenAI(api_key="sk-xxxx", model="gpt-4")
prompt = f"基于新闻《{news_df['title'][0]}》生成3条投资建议,包含行业逻辑"
advice = llm.invoke(prompt).content
print(advice)

五、注意事项与优化方案

  1. 数据时效性

    • 机构通常提前12小时捕捉新闻事件,建议结合龙虎榜数据交叉验证
    • 优先采用官方渠道(央视网、学习强国APP)补充实时数据
  2. 常见问题解决

    • 日期范围限制:仅支持20160203后数据
    • 缺失数据处理:用try-except跳过失效日期(如节假日停播)
    • 国内加速:使用清华pip源--index-url https://pypi.tuna.tsinghua.edu.cn/simple

结语:构建你的政策分析系统

AkShare让新闻联播数据获取变得触手可及,但真正的价值在于:

  1. 建立行业映射库:如政策关键词→股票板块的关联规则
  2. 定期复盘机制:每周日分析当周新闻,更新投资策略
  3. 多源验证:结合大宗交易、资金流向等数据过滤噪音

正如业内人士所言:“技术是工具,超额收益源于对政策的深刻理解与纪律性操作。”


作者注:本文代码已在Python 3.12 + AkShare 1.16.98环境测试通过。市场有风险,分析结论需谨慎验证。

http://www.xdnf.cn/news/1101151.html

相关文章:

  • vue3+ts div自由拖拽改变元素宽度
  • C++——构造函数的补充:初始化列表
  • UML 与 SysML 图表对比全解析:软件工程 vs 系统工程建模语言
  • ContextMenu的Item如何绑定命令
  • “28项评测23项SOTA——GLM-4.1V-9B-Thinking本地部署教程:10B级视觉语言模型的性能天花板!
  • 【AI大模型】BERT微调文本分类任务实战
  • 拼数(字符串排序)
  • 力扣面试150(29/100)
  • 问题 C: 为美好的世界献上爆炎(博弈论)
  • 如何在 Windows 10 上安装设置 Apache Kafka
  • 聊聊AI大模型的上下文工程(Context Engineering)
  • 你见过的最差的程序员是怎样的?
  • Redis底层数据结构
  • CSS3的核心功能介绍及实战使用示例
  • 提示工程:解锁大模型潜力的核心密码
  • 库存订单管理系统:3月份开源项目汇总
  • linux中cmake编译项目
  • Django母婴商城项目实践(二)
  • 1.1.2 运算符与表达式——AI教你学Django
  • 3.检查函数 if (!CheckStart()) return 的妙用 C#例子
  • Vue3 Pinia
  • php中调用对象的方法可以使用array($object, ‘methodName‘)?
  • DSPy:用编程思维驯服大模型的新范式
  • 2025年主流数据库连接池推荐:从原理到场景的深度解析
  • Java 大视界 -- Java 大数据在智能医疗远程手术机器人操作数据记录与分析中的应用(342)
  • 传输层协议UDP原理
  • 二分查找1
  • JavaScript加强篇——第五章 DOM节点(加强)与BOM
  • 企业培训笔记:Vue3前端框架配置
  • 销售数据可视化分析项目