mirror of
https://ghfast.top/https://github.com/aeroxw/easy_tdx_max.git
synced 2026-09-12 13:24:18 +08:00
- Package directory: src/xmtdx/ -> src/easy_tdx/ - Import path: from easy_tdx import ... - pip install easy-tdx - Add LICENSE (MIT) with upstream attribution (pytdx, xmtdx) - Add NOTICE with detailed attribution - Update all examples, tests, scripts, docs - Bump version to 1.0.0 BREAKING CHANGE: import path changed from `xmtdx` to `easy_tdx` Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
79 lines
2.2 KiB
Python
79 lines
2.2 KiB
Python
"""演示:获取公司信息目录与各个分类的详细内容。"""
|
|
|
|
import pandas as pd
|
|
from easy_tdx import TdxClient, Market
|
|
|
|
CODE = "600519"
|
|
NAME = "贵州茅台"
|
|
MARKET = Market.SH
|
|
|
|
# 要展示的分类,按需注释/取消注释
|
|
SHOW_CATEGORIES = [
|
|
"最新提示",
|
|
"公司概况",
|
|
"财务分析",
|
|
"股本结构",
|
|
"股东研究",
|
|
"机构持股",
|
|
"分红融资",
|
|
"高管治理",
|
|
"资金动向",
|
|
"资本运作",
|
|
"热点题材",
|
|
"公司公告",
|
|
"公司报道",
|
|
"经营分析",
|
|
"行业分析",
|
|
"研报评级",
|
|
]
|
|
|
|
|
|
def show_categories(categories):
|
|
"""显示公司信息目录。"""
|
|
df = pd.DataFrame([{
|
|
"目录名": cat.name,
|
|
"文件名": cat.filename,
|
|
"起始偏移": cat.start,
|
|
"内容长度": cat.length,
|
|
} for cat in categories])
|
|
print(f"{NAME} 公司信息目录:")
|
|
print(df.to_string(index=False))
|
|
|
|
|
|
def show_category_content(client, categories, category_name, max_chars=500):
|
|
"""获取并展示指定分类的内容。"""
|
|
cat = next((c for c in categories if c.name == category_name), None)
|
|
if not cat:
|
|
print(f" 未找到分类: {category_name}")
|
|
return
|
|
|
|
content = client.get_company_info_content(
|
|
MARKET, CODE, cat.filename, cat.start, cat.length
|
|
)
|
|
text = content.strip()
|
|
if len(text) > max_chars:
|
|
text = text[:max_chars] + f"\n... (共 {len(content.strip())} 字,仅显示前 {max_chars} 字)"
|
|
print(f"\n{'='*60}")
|
|
print(f"【{cat.name}】 (共 {cat.length} 字节)")
|
|
print(f"{'='*60}")
|
|
print(text)
|
|
|
|
|
|
def show_all_categories(client, categories):
|
|
"""依次展示所有 SHOW_CATEGORIES 中列出的分类内容。"""
|
|
for name in SHOW_CATEGORIES:
|
|
show_category_content(client, categories, name)
|
|
|
|
|
|
with TdxClient.from_best_host() as c:
|
|
categories = c.get_company_info_category(MARKET, CODE)
|
|
|
|
# 1. 显示目录
|
|
show_categories(categories)
|
|
|
|
# 2. 显示所有分类内容(每个分类默认只显示前500字)
|
|
show_all_categories(c, categories)
|
|
|
|
# 3. 也可以单独获取某个分类的完整内容,例如:
|
|
# show_category_content(c, categories, "公司概况", max_chars=99999)
|