finviz-api 2.0重磅更新:修复9大核心功能,Python 3.10+必学特性
finviz-api 2.0重磅更新:修复9大核心功能,Python 3.10+必学特性
【免费下载链接】finviz Unofficial API for finviz.com 项目地址: https://gitcode.com/gh_mirrors/fi/finviz
finviz-api 2.0版本已正式发布!作为finviz.com的非官方API,本次重大更新带来了9大核心功能修复、全面的测试套件以及对Python 3.10+的强力支持,为股票市场数据分析提供了更稳定、更强大的工具支持。
🚀 为什么选择finviz-api 2.0?
finviz-api 2.0解决了因FinViz网站2024年底重大DOM结构变更导致的所有数据抓取问题。新版本不仅完全重构了核心数据提取逻辑,还引入了全面的测试体系和现代化的开发工具链,让金融数据获取从未如此简单可靠。
✨ 核心功能修复亮点
1. get_stock():90+数据点完整提取
完全重写的股票数据提取函数,现在能稳定返回90+关键财务指标。通过更新的选择器系统(如quote-header_ticker-wrapper和snapshot-td2),解决了之前数据为空或不完整的问题,特别是波动率数据现在能正确区分周/月组件。
2. Screener:全类型表格完美解析
修复了表格解析和表头提取逻辑,现在能正确从<th>元素提取表头信息,确保表格数据与表头完美对齐。支持所有表格类型:概览(Overview)、估值(Valuation)、财务(Financial)、所有权(Ownership)、表现(Performance)和技术(Technical)分析。
3. get_news():时间戳智能解析
更新了时间戳解析系统,支持"Today HH:MMAM/PM"和"Mon-DD HH:MMAM/PM"等新格式,统一返回YYYY-MM-DD HH:MM标准格式,让新闻时间序列分析更加便捷。
4. get_insider():新表格结构适配
针对FinViz新的styled-table-new表格类进行了优化,从thead th元素提取表头,确保所有内幕交易数据字段准确解析。
5. get_analyst_price_targets():分析师评级精准获取
适配新的js-table-ratings表格类,正确解析分析师信息、评级和价格目标数据,为投资决策提供关键参考。
🐍 Python 3.10+特性深度整合
finviz-api 2.0全面拥抱Python现代特性,要求Python 3.10或更高版本。这一决策带来了多项优势:
- 利用结构模式匹配(Structural Pattern Matching)优化DOM解析逻辑
- 增强的类型提示支持,提高代码可读性和IDE支持
- 更好的异步处理能力,提升数据获取效率
🔧 开发与测试体系升级
全面测试套件
新版本引入了完整的测试体系,确保API稳定性:
test_stock.py:全面测试所有股票相关函数test_screener.py:验证筛选器功能的正确性test_integration.py:端到端工作流测试- 内置速率限制机制,尊重FinViz服务器负载
测试代码位于项目的tests/目录下,开发者可以通过这些测试用例深入了解API的使用方法和边界情况。
现代化开发配置
项目采用现代化的开发工具链,配置文件位于pyproject.toml:
- pytest:强大的测试框架
- ruff:超高速Python代码检查器
- mypy:静态类型检查,提升代码质量
📦 快速开始使用指南
1. 安装最新版本
pip install --upgrade finviz-api
2. 基本使用示例
获取股票数据:
from finviz.main_func import get_stock
# 获取苹果公司股票数据
stock_data = get_stock('AAPL')
print(stock_data['P/E']) # 打印市盈率
print(stock_data['Forward P/E']) # 打印远期市盈率
使用筛选器:
from finviz.screener import Screener
# 创建筛选器实例
screener = Screener(filters=['exch_nasd', 'cap_large'], table='Performance')
# 获取并打印结果
for stock in screener.data:
print(f"{stock['Ticker']}: {stock['Performance (Week)']}")
🛠️ 开发者注意事项
FinViz网站在2024年底进行了重大更新,主要变化包括:
- 表头从
<td>元素迁移到<th>元素 - 新增CSS类:
styled-table-new、snapshot-td2、quote-header_ticker-wrapper - 新闻部分采用新的时间戳格式
- 分析师评级表格结构重组
这些变更直接导致旧版本API失效,而finviz-api 2.0通过全面重构完美解决了这些问题,确保数据获取的稳定性和准确性。
📝 版本更新说明
finviz-api 2.0是自2019年初始版本以来最重大的更新,解决了1.4.x版本中存在的所有已知问题,包括股票数据返回空值、筛选器无结果、新闻时间戳解析错误和内幕交易数据提取失败等关键问题。
通过本次更新,finviz-api重新确立了其作为FinViz数据提取工具的领先地位,为金融市场分析人员和开发者提供了可靠、高效的数据获取解决方案。无论是量化交易策略开发还是金融市场研究,finviz-api 2.0都将成为您不可或缺的得力助手。
【免费下载链接】finviz Unofficial API for finviz.com 项目地址: https://gitcode.com/gh_mirrors/fi/finviz
更多推荐



所有评论(0)