傻瓜教程安装Trae IDE用AI撰写第一个AKShare接口脚本

本文通过用户与 AI 的对话,展示如何在 Trae IDE 中安装环境、配置项目,并利用 AI 开发和优化基于 AKShare 库的 ETF 实时行情脚本。内容包括 Trae IDE 安装、项目配置、脚本开发、问题修复及功能扩展。


前置条件

软件 :Anaconda 安装设置,详见我之前发布的文章
虚拟环境 :自定义环境名 AKTool,Python 3.11 + AKShare 库,详见我之前发布的文章


安装 Trae IDE

  1. 访问官方网站 :前往 www.trae.com.cn/home 下载 Trae IDE 安装包。
  2. 安装建议:不建议安装在系统盘(如 C 盘),推荐选择 D 盘或 E 盘以避免权限问题。
  3. 安装步骤:运行安装程序,按照提示完成安装,确保选择合适的安装路径。

项目设置

  1. 新建项目文件夹 :创建一个项目文件夹,例如 E:\PycharmProjects\PythonProject\AKTool
  2. 打开项目 :启动 Trae IDE,通过"文件 > 打开文件夹"选择 E:\PycharmProjects\PythonProject\AKTool 作为项目根目录。

新建配置文件

  1. 创建配置文件

    • 打开菜单"文件 > 使用配置文件新建窗口 > 创建配置文件"。
    • 输入名称 AKTool,点击"创建"。
  2. 添加项目文件夹

    • 在文件夹和工作区中添加项目文件夹 E:\PycharmProjects\PythonProject\AKTool
  3. 配置内容

    • 点击"内容 > 设置",在侧边栏打开设置面板。
    • 修改配置文件内容为:
json 复制代码
{
  "workbench.colorTheme": "Deep Blue",
  "python.condaPath": "E:\anaconda3\Scripts\conda.exe activate AKTool",
  "python.defaultInterpreterPath": "E:\anaconda3\envs\AKTool"
}
  • Ctrl+S 保存。

初始需求:获取 ETF 实时行情

用户输入

根据接口说明文档,撰写一个获取所有ETF实时行情的脚本。 ETF基金实时行情-东财

接口: fund_etf_spot_em

目标地址: https://quote.eastmoney.com/center/gridlist.html#fund_etf

描述: 东方财富-ETF 实时行情

限量: 单次返回所有数据

输入参数

名称 类型 描述


输出参数

名称 类型 描述

代码 object -

名称 object -

最新价 float64 -

IOPV实时估值 float64 -

基金折价率 float64 注意单位: %

涨跌额 float64 -

涨跌幅 float64 注意单位: %

成交量 float64 -

成交额 float64 -

开盘价 float64 -

最高价 float64 -

最低价 float64 -

昨收 float64 -

换手率 float64 -

量比 float64 -

委比 float64 -

外盘 float64 -

内盘 float64 -

主力净流入-净额 float64 -

主力净流入-净占比 float64 -

超大单净流入-净额 float64 -

超大单净流入-净占比 float64 -

大单净流入-净额 float64 -

大单净流入-净占比 float64 -

中单净流入-净额 float64 -

中单净流入-净占比 float64 -

小单净流入-净额 float64 -

小单净流入-净占比 float64 -

现手 float64 -

买一 float64 -

卖一 float64 -

最新份额 float64 -

流通市值 int64 -

总市值 int64 -

数据日期 object -

更新时间 object -

接口示例

import akshare as ak

fund_etf_spot_em_df = ak.fund_etf_spot_em()

print(fund_etf_spot_em_df)

数据示例

markdown 复制代码
       代码    名称  ...       数据日期                  更新时间

0 520890 港股通红利低波ETF ... 2024-12-26 2024-12-26 16:11:57+08:00

1 159331 红利港股ETF ... 2024-12-26 2024-12-26 15:34:48+08:00

2 159333 港股央企红利ETF ... 2024-12-26 2024-12-26 15:34:45+08:00

3 159583 通信设备ETF ... 2024-12-26 2024-12-26 15:35:03+08:00

4 515880 通信ETF ... 2024-12-26 2024-12-26 16:11:33+08:00

... ... ... ... ... ...

1005 561170 绿电50ETF ... 2024-12-26 2024-12-26 16:11:52+08:00

1006 562550 绿电ETF ... 2024-12-26 2024-12-26 16:11:39+08:00

1007 159301 公用事业ETF ... 2024-12-26 2024-12-26 15:34:36+08:00

1008 159611 电力ETF ... 2024-12-26 2024-12-26 15:34:12+08:00

1009 560580 电力ETF南方 ... 2024-12-26 2024-12-26 16:11:52+08:00

1010 rows x 37 columns

AI 回复

Trae CN 生成以下脚本,保存为 get_etf_spot.py

python 复制代码
import akshare as ak

# 调用 fund_etf_spot_em 接口获取 ETF 实时行情数据
fund_etf_spot_em_df = ak.fund_etf_spot_em()

# 打印获取到的 ETF 实时行情数据
print(fund_etf_spot_em_df)

运行测试

在 Trae IDE 中,点击运行按钮执行脚本。注意控制台输出,确认环境配置成功,标志为:
(AKTool) PS E:\PycharmProjects\AKTool> & E:/anaconda3/envs/AKTool/python.exe e:/PycharmProjects/AKTool/get_etf_spot.py


功能扩展:保存数据到 CSV 文件

用户输入

增加将数据保存为 CSV 文件的功能。

AI 回复

Trae CN 修改脚本,加入 Pandas 的 to_csv 方法:

python 复制代码
import akshare as ak
import pandas as pd

# 调用 fund_etf_spot_em 接口获取 ETF 实时行情数据
fund_etf_spot_em_df = ak.fund_etf_spot_em()

# 将数据保存到 CSV 文件
csv_file_path = 'etf_spot_data.csv'
fund_etf_spot_em_df.to_csv(csv_file_path, index=False)

# 打印获取到的 ETF 实时行情数据
print(fund_etf_spot_em_df)
print(f"数据已保存到 {csv_file_path}")

运行测试

点击运行按钮,检查控制台输出,确认环境标志:
(AKTool) PS E:\PycharmProjects\AKTool> & E:/anaconda3/envs/AKTool/python.exe e:/PycharmProjects/AKTool/get_etf_spot.py


问题修复:解决 CSV 中文乱码

用户输入

CSV 文件在 Excel 中打开时中文乱码。

AI 回复

Trae CN 修改脚本,设置 encoding='gbk'

python 复制代码
import akshare as ak
import pandas as pd

# 调用 fund_etf_spot_em 接口获取 ETF 实时行情数据
fund_etf_spot_em_df = ak.fund_etf_spot_em()

# 将数据保存到 CSV 文件,指定编码为 gbk
csv_file_path = 'etf_spot_data.csv'
fund_etf_spot_em_df.to_csv(csv_file_path, index=False, encoding='gbk')

# 打印获取到的 ETF 实时行情数据
print(fund_etf_spot_em_df)
print(f"数据已保存到 {csv_file_path}")

运行测试

点击运行按钮,确认控制台环境标志:
(AKTool) PS E:\PycharmProjects\AKTool> & E:/anaconda3/envs/AKTool/python.exe e:/PycharmProjects/AKTool/get_etf_spot.py


进一步优化:动态文件名与子目录保存

用户输入:\

  1. 保存 CSV 到"数据导出"子目录。
  2. 文件名改为 ETF行情导出_日期时间,以"更新时间"列最后值为准。

AI 回复

Trae CN 生成优化脚本:

ini 复制代码
import akshare as ak
import pandas as pd
import os
from datetime import datetime

# 调用 fund_etf_spot_em 接口获取 ETF 实时行情数据
fund_etf_spot_em_df = ak.fund_etf_spot_em()

# 获取更新时间列的最后一个时间
last_update_time = fund_etf_spot_em_df['更新时间'].iloc[-1]
# 将时间字符串转换为 datetime 对象
last_update_datetime = pd.to_datetime(last_update_time).to_pydatetime()
# 格式化日期时间
formatted_time = last_update_datetime.strftime("%Y%m%d%H%M%S")

# 定义子目录
sub_dir = '数据导出'
# 检查子目录是否存在,如果不存在则创建
if not os.path.exists(sub_dir):
    os.makedirs(sub_dir)

# 构建完整的 CSV 文件路径
csv_file_name = f"ETF行情导出_{formatted_time}.csv"
csv_file_path = os.path.join(sub_dir, csv_file_name)

# 将数据保存到 CSV 文件,指定编码为 gbk
fund_etf_spot_em_df.to_csv(csv_file_path, index=False, encoding='gbk')

# 打印获取到的 ETF 实时行情数据
print(fund_etf_spot_em_df)
print(f"数据已保存到 {csv_file_path}")

运行测试

点击运行按钮,确认控制台环境标志:
(AKTool) PS E:\PycharmProjects\AKTool> & E:/anaconda3/envs/AKTool/python.exe e:/PycharmProjects/AKTool/get_etf_spot.py


总结

本教程展示了如何通过 Trae IDE 和 AI 协作,开发基于 AKShare 的金融数据脚本。主要经验包括:

  1. 配置 IDE 与测试环境:通过 Trae IDE 配置 Anaconda 虚拟环境(AKTool),确保脚本运行稳定,控制台标志确认环境正确性。
  2. 小步迭代与充分测试:从基础数据获取到 CSV 导出、乱码修复、动态文件名,每次功能更新后都进行运行测试,用户反馈驱动快速优化。
  3. 高效开发流程:Trae IDE 的简洁界面结合 AI 的智能代码生成,让初学者也能快速上手,完成复杂金融数据任务。
相关推荐
固定资产管理系统软件37 分钟前
商务局RFID固定资产管理系统的应用价值与落地要点解析
大数据·python
TheBestRucy1 小时前
Python 九阳神功:从零筑基到线程飞升
服务器·开发语言·网络·人工智能·python
lancyu2 小时前
关于多轮对话机器人的上下文Token优化和解决方案
人工智能·python·深度学习·机器学习·chatgpt·机器人·prompt
草莓橙子碗2 小时前
Claude 使用指南
开发语言·python
工具分享2 小时前
陪跑跟品爆单AI选品助手,高效跟品会赔本吗?
人工智能·python
COOLMO研究AI2 小时前
Python 如何实现 AI API 的提示词(Prompt)版本管理与热更新
人工智能·python·prompt
老郑聊AI业财智造3 小时前
Transformer 技术架构与源码分析
人工智能·python·深度学习·语言模型·架构·transformer·软件工程
程序员三藏3 小时前
自动化测试用例编写详解
自动化测试·软件测试·python·功能测试·测试工具·职场和发展·测试用例
230万光年的思念3 小时前
分子动力学模拟参考文献
python
HongXu_CaiYi4 小时前
0103-python相关-函数、文件
python