当前位置: 首页 > 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.dtcms.com/a/273553.html

相关文章:

  • 剑指offer——链表:从尾到头打印链表
  • 自用docker记录
  • 学习C++、QT---21(QT中QFile库的QFile读取文件、写入文件的讲解)
  • 部署 React + Vite + TypeScript 项目到阿里云 ECS
  • ARMv9架构
  • tcp/quic 的滑动窗口
  • 飞算 JavaAI 体验:重塑 Java 开发的智能新范式
  • Element Plus和Ant Design Vue深度对比分析与选型指南
  • WD0407 40V 7A 超级肖特基二极管,应用于开关汽车工业控制
  • 【字节跳动】数据挖掘面试题0015:100 亿个单词,找出出现频率最高的单词。要求几种方案
  • 20250711荣品RD-RK3588开发板在Android13下的开机自启动的配置步骤
  • React之旅-05 List Key
  • 进制转换原理与实现详解
  • cyvcf2 知识点详解
  • MYSQL C_API使用全解
  • 基于gitlab 构建CICD发布到K8S 平台
  • Java大厂面试实录:谢飞机的电商场景技术问答(Spring Cloud、MyBatis、Redis、Kafka、AI等)
  • 飞算Java AI:专为 Java 开发者打造的智能开发引擎
  • 后台管理系统-权限管理
  • 云、实时、时序数据库混合应用:医疗数据管理的革新与展望(下)
  • 从Markdown到PPT:用Python打造专业演示文稿转换器
  • 2025前端面试真题以及答案-不断整理中,问题来源于牛客真题
  • 面具贴纸美颜SDK如何集成进直播APP?技术细节与性能优化实战
  • 百度2026届校招开启,大规模发力AI的百度未来何在?
  • PPT处理控件Aspose.Slides教程:使用 C# 将 PPTX 转换为 EMF
  • 【Linux仓库】命令行参数与环境变量【进程·伍】
  • 语音对话秒译 + 视频悬浮字 + 相机即拍即译:ViiTor 如何破局跨语言场景?
  • Django快速入门搭建网站
  • Monorepo 与包管理工具:从幽灵依赖看 npm 与 pnpm 的架构差异
  • Django母婴商城项目实践(二)