You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用Pandas Data Reader及yfinance获取特斯拉金融数据遇报错求助

问题解决:Pandas Data Reader与Yfinance适配报错

问题原因分析

  1. 第一个报错(AttributeError: 'NoneType' object has no attribute 'group')
    Pandas Data Reader已停止维护Yahoo Finance数据源,Yahoo API接口变更后,pdr.get_data_yahoo()无法正常获取数据返回None,进而触发该错误。另外你输入的股票代码TSLR有误,特斯拉的正确代码是TSLA,这也会导致数据获取失败。

  2. 第二个报错(AttributeError: module 'yfinance' has no attribute 'pdr_override')
    Yfinance版本更新后,pdr_override()的调用方式发生变化,旧写法已失效。


解决方案

方案1:直接使用Yfinance获取数据(推荐,更稳定)

跳过Pandas Data Reader,直接用Yfinance原生方法获取数据:

import yfinance as yf

# 获取特斯拉(正确代码TSLA)的历史数据,period可指定时间范围(如"1y"=1年,"max"=全部历史)
tsla_data = yf.Ticker("TSLA").history(period="max")
# 查看前5行数据
print(tsla_data.head())

方案2:适配Pandas Data Reader使用Yfinance

如果需要保留Pandas Data Reader的语法,使用以下正确适配代码:

import pandas as pd
from pandas_datareader import data as pdr
from yfinance import pdr_override

# 启用Yfinance对Pandas Data Reader的覆盖
pdr_override()
# 获取特斯拉数据
df = pdr.get_data_yahoo("TSLA")
print(df.head())

内容的提问来源于stack exchange,提问作者Ajay kumar

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.18 05:21:00