核心用法
PyWenCai 是一款封装了同花顺问财(iWenCai)自然语言查询能力的Python工具,允许用户通过中文自然语言语句(如"今日涨幅前10"、"市盈率小于20的股票")快速获取A股、指数、基金、港股、美股、可转债等多市场金融数据。核心函数为 pywencai.get(),需提供有效的网站Cookie进行身份验证。
主要功能特性:
- 自然语言查询:无需学习复杂API,直接用中文描述数据需求
- 多资产类别支持:股票(stock)、指数(zhishu)、基金(fund)、港股(hkstock)、美股(usstock)、新三板(threeboard)、可转债(conbond)、保险(insurance)、期货(futures)、理财产品(lccp)
- 灵活分页控制:支持单页查询、自动全量拉取(loop=True)或指定页数
- 排序与筛选:支持指定排序字段和方向(asc/desc)
- 代理支持:可通过request_params配置HTTP代理
- 付费数据接入:pro=True可访问问财付费数据(需对应等级Cookie)
依赖要求:Python 3.7+、Node.js v16+(内部执行JS代码)、pandas
显著优点
1. 极低使用门槛:相比传统金融数据API需要学习特定语法和字段名,PyWenCai让用户用母语自然语言即可表达复杂筛选条件,如"连续涨停天数大于2天的股票"、"今日MACD金叉且成交量是5日均量2倍以上的股票"
2. 数据覆盖面广:整合问财平台的海量金融数据,涵盖基本面(PE/PB/ROE)、技术面(MACD/KDJ/均线)、资金面(主力净流入/北向资金)、特殊事件(涨停/跌停/解禁/减持)等多维度信息
3. 筛选条件可组合:支持复杂的复合条件查询,如"市盈率小于20且营收同比增长大于30%且机构持仓比例大于10%的股票"
4. 自动化友好:适合量化策略开发中的选股环节,可程序化执行多策略批量筛选并导出Excel
潜在缺点与局限性
1. 强依赖外部Cookie:必须手动从浏览器获取并维护问财网站的有效Cookie,Cookie过期后需重新获取,无法实现完全无人值守的自动化运行
2. 存在封禁风险:高频调用可能导致IP或账号被问财服务器限制访问,需自行控制请求频率(建议配合sleep参数和重试机制)
3. 非官方接口:属于对问财Web端的逆向封装,接口稳定性取决于目标网站变更,存在随时失效的风险
4. 返回数据结构不一致:Detail类型查询返回dict,List类型返回DataFrame,需注意处理返回值类型
5. 付费数据门槛:高级数据需要问财付费会员Cookie,且pro模式与特定Cookie绑定
适合人群
- 量化爱好者与个人投资者:需要快速验证选股思路、进行多因子筛选
- 金融数据分析学习者:希望通过自然语言探索金融数据的学生和研究人员
- 自动化策略开发者:需要将选股逻辑集成到Python量化框架中的开发者(能接受Cookie维护成本)
常规风险
| 风险类型 | 具体说明 |
|---------|---------|
| **账号封禁** | 高频请求可能触发问财反爬机制,导致Cookie失效或账号临时限制 |
| **数据时效性** | 作为非官方封装,数据更新延迟和准确性依赖问财平台,不适合对延迟极敏感的高频交易 |
| **合规风险** | 爬取金融数据需遵守问财服务条款,商业用途需谨慎评估 |
| **依赖维护** | Node.js版本变更或问财前端改版可能导致工具失效 |
| **Cookie泄露** | Cookie包含登录凭证,代码中硬编码或不当传输存在账号被盗风险 |