工具系列————下载公司年报信息

本文介绍如何使用Python编程从指定来源下载公司的年度报告信息,包括步骤解析和关键代码展示,帮助读者掌握自动化获取财务数据的方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

import json
import os
from time import sleep
from urllib import parse

import requests


def get_adress(bank_name):    
    url = "http://www.cninfo.com.cn/new/information/topSearch/detailOfQuery"
    data = {
   
        'keyWord': bank_name,
        # 'stock':'603048',
        'maxSecNum': 10,
        'maxListNum': 5,
    }
    hd = {
   
        'Host': 'www.cninfo.com.cn',
        'Origin': 'http://www.cninfo.com.cn',
        'Pragma': 'no-cache',
        'Accept-Encoding': 'gzip,deflate',
        'Connection': 'keep-alive',
        'Content-Length': '70',
        'User-Agent': 'Mozilla/5.0(Windows NT 10.0;Win64;x64) AppleWebKit / 537.36(KHTML, likeGecko) Chrome / 75.0.3770.100Safari / 537.36',
        'Content-Type': 'application/x-www-form-urlencoded; charset=UTF-8',
        'Accept': 'application/json,text/plain,*/*',
        'Accept-Language': 'zh-CN,zh;q=0.9,en;q=0.8',
    }
    r = requests.post(url
### 对上市公司年报进行词频统计 对于上市公司年报文本的词频分析,可以采用Python中的`jieba`库来进行中文分词操作,并通过自定义函数来实现词频统计。具体过程涉及读取文档内容、去除停用词以及计算词语出现频率。 #### 导入所需模块并加载数据 为了完成这项工作,首先需要安装并引入必要的包,比如用于中文分词的`jieba`工具。接着准备待处理的数据源——即上市公司的年度报告全文本字符串形式存储于变量`text_all`之中[^1]。 ```python import jieba from collections import Counter ``` #### 定义预处理函数 创建一个名为`preprocess_text()`的方法用来执行初步清理任务,包括但不限于转换成小写字母(如果适用)、移除特殊字符等。这里假设输入已经过适当清洗,则主要关注点在于调用`jieba.cut()`方法对文本实施精确模式下的切分作业。 ```python def preprocess_text(text): # 利用结巴分词器做精准分割 seg_list = jieba.cut(text, cut_all=False) return list(seg_list) ``` #### 加载停用词表 从指定路径加载预先整理好的停用词列表至内存中以便后续过滤掉无意义词汇。此步骤有助于提高最终结果的有效性和准确性。 ```python with open("stopwords.txt", "r", encoding='utf-8') as f: stopwords = set(f.read().splitlines()) ``` #### 计算词频分布 构建辅助功能以遍历经过前序加工后的词条集合,在排除那些属于常见却缺乏实际价值项的前提下累积计数各个独立单元的发生次数。最后利用`Counter`类快速汇总统计数据形成字典结构输出给用户查看或进一步可视化展示。 ```python def calculate_word_frequency(word_tokens, stop_words_set=stopwords): filtered_words = [word for word in word_tokens if word not in stop_words_set and len(word.strip()) > 0] freq_dist = dict(Counter(filtered_words)) sorted_freq_dist = {k: v for k, v in sorted(freq_dist.items(), key=lambda item: item[1], reverse=True)} return sorted_freq_dist ``` #### 应用实例化流程 现在有了上述几个组成部分之后就可以组合起来针对特定案例开展实践演练了。下面给出一段完整的示范代码片段说明怎样一步步达成目标: ```python if __name__ == "__main__": text_all = "" # 这里应该填入具体的年报文本内容 processed_texts = preprocess_text(text_all) frequency_distribution = calculate_word_frequency(processed_texts) top_n_keywords = [(term, count) for term, count in list(frequency_distribution.items())[:10]] print(top_n_keywords) ``` 以上就是关于如何运用Python编程语言配合第三方扩展库高效地解析企业官方发布的财务状况总结材料进而获取其中高频次提及的关键术语的技术方案介绍。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值