mirror of
https://ghfast.top/https://github.com/aeroxw/easy-tdx.git
synced 2026-09-12 22:44:17 +08:00
1. 核心模型:增加 TdxBlock dataclass。 2. 协议命令:实现 GetBlockInfoMetaCmd 与 GetBlockInfoCmd。 3. 编解码器:增加 codec/block.py,支持 .dat 板块文件二进制解析。 4. 客户端 API:TdxClient 和 AsyncTdxClient 增加 get_block_info(),支持分片拉取。 5. 测试与验证:增加单元测试 tests/unit/test_block_info.py 及实测脚本。 6. 文档更新:README.md 同步 API 及安装说明。
37 lines
1.1 KiB
Python
37 lines
1.1 KiB
Python
"""实测板块信息获取。"""
|
|
import sys
|
|
import pathlib
|
|
|
|
# 添加 src 到 path
|
|
sys.path.insert(0, str(pathlib.Path(__file__).parent.parent / "src"))
|
|
|
|
from xmtdx import TdxClient
|
|
|
|
def main():
|
|
print("正在寻找最优服务器...")
|
|
try:
|
|
with TdxClient.from_best_host() as c:
|
|
print(f"已连接到: {c._host}")
|
|
|
|
# 尝试获取概念板块 (block_gn.dat)
|
|
filename = "block_gn.dat"
|
|
print(f"正在获取 {filename} ...")
|
|
blocks = c.get_block_info(filename)
|
|
|
|
print(f"成功获取 {len(blocks)} 个板块。")
|
|
|
|
# 打印前 5 个板块及其前 3 个股票
|
|
for b in blocks[:5]:
|
|
print(f"板块名称: {b.name:<12} 股票数: {b.count:<5} 样例: {b.codes[:3]}")
|
|
|
|
if not blocks:
|
|
print("警告:未获取到任何板块数据。")
|
|
|
|
except Exception as e:
|
|
print(f"实测失败: {e}")
|
|
import traceback
|
|
traceback.print_exc()
|
|
|
|
if __name__ == "__main__":
|
|
main()
|