Skip to content

legeling/Annualreport_tools

Repository files navigation

Annualreport Tools Icon

Annualreport_tools · 年报工具集

快速抓取巨潮资讯年报、批量下载PDF、转换为TXT,并进行关键词分析。

GitHub Stars GitHub Forks GitHub Watchers Python Version GitHub Issues

English · 简体中文

演示截图


免责声明

重要提示:

  • 本项目仅供学习研究使用,请勿用于任何违法违规的爬虫行为、商业转售或其他违反法律法规的活动。
  • 优先使用已整理好的网盘数据集./res/AnnualReport_links_2004_2023.xlsx),该文件已包含下载好的年报链接。避免频繁访问巨潮资讯服务器,尊重源站资源与相关监管要求。
  • 限速至关重要:爬虫实现了按天分片的机制以最小化服务器负载。请不要修改代码以增加请求频率。
  • 您对使用这些脚本触发的任何数据收集行为负全部责任。作者不对滥用行为承担任何责任。
  • 使用本工具集即表示您已阅读并同意本免责声明。

核心功能

  1. report_link_crawler.py – 按板块/行业分段查询巨潮资讯,在速率限制下保持稳定。
  2. pdf_batch_converter.py – 具有MIME验证的鲁棒PDF下载器 + 转换为TXT。
  3. text_analysis.py – 多进程关键词分析器 + Excel导出。
  4. text_analysis_universal.py – 接受任意TXT目录的轻量级分析器。
  5. 资源文件(/res – 精选的年报主表和文档图标资源。
  6. 文档文件夹 – 存储在docs/下的双语文档,方便切换。

快速开始

  1. 安装依赖:pip install -r requirements.txt
  2. 运行 1.report_link_crawler.py(或复用 ./res/AnnualReport_links_2004_2023.xlsx)准备年报链接。
  3. 执行 2.pdf_batch_converter.py 下载PDF并转换为TXT;可选择之后删除原始PDF。
  4. 启动 3.text_analysis.py(多进程)或 text_analysis_universal.py 生成Excel中的关键词总计和总词数。
  5. 查看 Wikidocs/ 获取特定语言的详细教程。

运行建议(安全与稳定)

  • 默认使用 https 请求与重试退避,请勿私自提高请求频率。
  • 下载器仅允许 cninfo 官方域名,避免误下载未知来源文件。
  • 目录建议用环境变量配置:
    • ANNUAL_REPORT_ROOT3.text_analysis.py 根目录
    • UNIVERSAL_ANALYSIS_DIRtext_analysis_universal.py 输入目录
    • MDA_TXT_DIR / MDA_OUTPUT_DIRbatch_mda_extract.py 输入输出目录

模块概览

脚本/资源 说明
1.report_link_crawler.py 带板块/行业过滤器和重试逻辑的巨潮资讯爬虫
2.pdf_batch_converter.py 批量下载 + pdfplumber转换,带文件验证
3.text_analysis.py 多进程关键词分析,Excel导出
text_analysis_universal.py 适用于任意TXT文件夹的轻量级分析器
./res/AnnualReport_links_2004_2023.xlsx 涵盖2004-2023年的精选主表

脚本索引(旧版编号)

  1. 1.report_link_crawler.py(原 1.年报链接抓取.py
  2. 2.pdf_batch_converter.py(原 2.PDF转码.py
  3. 3.text_analysis.py(原 3.文本分析.py
  4. text_analysis_universal.py(原 文本分析-universal.py

依赖要求

pip install -r requirements.txt

多语言文档

Star历史

Star History Chart

更新日志

日期 亮点
2026/04/18 安全与稳定性加固:请求重试退避、下载域名校验、异常处理优化,文本分析性能优化
2025/11/21 代码优化:添加类型提示,改进错误处理,增强所有脚本的鲁棒性
2025/11/21 README切换为英文默认 + 免责声明,多进程分析器,添加docs文件夹
2025/03/15 添加requirements文件,下载器现在支持其他公告
2024/10/13 修复爬虫结果中缺失公司的问题
2024/02/14 上传主表,改进可读性
2024/01/04 改进关键词准确性,添加通用分析器
2023/05/25 全面重构,参数化工作流
2023/04/20 初始提交

TODO

  • GUI / 桌面前端
  • 将数据持久化到PostgreSQL / DuckDB进行进一步分析
  • 云端关键词分析 & API端点
  • 自动化调度 + 告警(GitHub Actions / cron)
  • 双语文档 & 项目指标

贡献

欢迎提交Issues和PRs!与社区分享功能想法、bug报告或最佳实践。

支持

如果这个项目对您的研究或工作有帮助,请考虑请我喝杯咖啡!您的支持让项目保持活力并激励进一步改进。

或扫描微信二维码:

微信捐赠二维码

每一份贡献都值得感激!感谢您的支持!

About

A small tool for crawling and downloading annual reports from the CNINFO website, and converting them into TXT format for word frequency analysis.|一个巨潮资讯网年报爬取,下载,并将格式转为TXT文本便于词频分析的小工具

Resources

Code of conduct

Contributing

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages