首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >异常处理下载库存数据

异常处理下载库存数据
EN

Stack Overflow用户
提问于 2019-07-24 14:02:26
回答 1查看 267关注 0票数 0

我想下载所有的收盘价的sp500数据,并放入一个数据框架。我的异常处理没有捕捉到。

我已经尝试过标准语法异常处理

代码语言:javascript
复制
from pandas_datareader import data as pdr

import yfinance as yf
yf.pdr_override() # <== that's all it takes :-)


# NYSE
url_nyse = "http://www.nasdaq.com/screening/companies-by-name.aspx?letter=0&exchange=nyse&render=download"
# Nasdaq
url_nasdaq = "http://www.nasdaq.com/screening/companies-by-name.aspx?letter=0&exchange=nasdaq&render=download"
# AMEX
url_amex = "http://www.nasdaq.com/screening/companies-by-name.aspx?letter=0&exchange=amex&render=download"

import pandas as pd

df = pd.DataFrame.from_csv(url_nyse)
stocks = df.index.tolist()


df_list = []
used_stocks = []

for stock in stocks:
    try:
        data = pdr.get_data_yahoo(stock, start="2017-01-01", end="2017-04-30")
        data_close=data['Close']
        df_list.append(data_close)
        used_stocks.append(stock)
    except ValueError :
        pass

df_list

我期待的股票指数是不可用的,以捕获与异常处理。

EN

回答 1

Stack Overflow用户

发布于 2019-07-24 15:48:57

您至少有两个选项。

的第一个将会排除所有这样的异常:

代码语言:javascript
复制
try:
    # your code
except:
    print "Caught it!"

的第二个是添加您遇到的每个异常,以便相应地更改程序的行为。

代码语言:javascript
复制
try:
    # your code
except ValueError:
    print("Value Error")
except KeyError:
    print("Key Error")

或者,如果你不想单独处理它们,就像这样:

代码语言:javascript
复制
try:
    #your code
except (KeyError, ValueError):
    print("Error")
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/57176212

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档