ongonmanga-beep/tefas-csv-downloader
GitHub: ongonmanga-beep/tefas-csv-downloader
一个用于绕过F5 ASM WAF从土耳其电子基金平台API下载基金比较数据的CSV工具。
Stars: 0 | Forks: 0
# TEFAS CSV 下载器
TEFAS(土耳其电子基金交易平台)基金比较数据,
通过 API 以 CSV 格式下载。具备 WAF (F5 ASM) 绕过功能。
## 功能特性
- 支持 3 种基金类型:**YAT**(投资型),**EMK**(退休型),**BYF**(交易所交易基金)
- F5 ASM WAF 绕过 — 直接调用 API
- 通过重试/退避机制实现可靠的 HTTP 请求
- 生成带 UTF-8 BOM 的 Excel 兼容 CSV 文件
- 详细的错误消息
## 安装
```
pip install -r requirements.txt
```
## 使用方法
```
# 所有基金类型
python3 tefas_csv_downloader.py
# 特定类型
python3 tefas_csv_downloader.py --types YAT,BYF
# 自定义输出文件夹
python3 tefas_csv_downloader.py --output ~/Desktop/tefas_veriler
# 仅WAF检查
python3 tefas_csv_downloader.py --check-only
```
## 工作原理
1. 对 TEFAS 主页进行 WAF 检查
2. 向 `/api/funds/fonGetiriBazliBilgiGetir` 端点发送 POST 请求获取数据
3. 将返回的 JSON 数据转换为 CSV 并保存
由于 API 豁免浏览器的 JS 挑战,因此可以使用 `requests` 库
直接访问。
## 输出结果
为每种基金类型生成 `TEFAS_{类型}_{日期}.csv` 文件:
| 列名 | 说明 |
|-------|----------|
| 基金代码 | 简短的基金代码(例如:TTE, AFA) |
| 基金名称 | 完整的基金名称 |
| 基金类型 | 伞形基金类型 |
| 1/3/6 个月收益率 (%) | 周期性收益率百分比 |
| 1/3/5 年收益率 (%) | 长期收益率 |
| 风险值 | 1-7 的风险等级 |
## 环境要求
- Python 3.7+
- requests
标签:逆向工具