您的位置:首页 > 其它

Download U.S. Stock Data form Yahoo Finance

2015-04-16 11:03 399 查看
def get_data_yahoo(ticker, datestart, dateend):
datestart = datestart.split('-')
dateend =  dateend.split('-')

startyear = datestart[0]
startmonth = str(int(datestart[1])-1)
startday = datestart[2]

endyear = dateend[0]
endmonth = str(int(dateend[1])-1)
endday = dateend[2]

if len(startmonth)==1:
startmonth = '0' + startmonth
if len(endmonth)==1:
endmonth = '0' + endmonth

url = 'http://real-chart.finance.yahoo.com/table.csv?s='+ticker+'&a='+startmonth+'&b='+startday+'&c='+startyear+'&d='+endmonth+'&e='+endday+'&f='+endyear+'&g=d&ignore=.csv'
try:
response = urllib2.urlopen(url)
cr = csv.reader(response)
stock = []
for row in cr:
stock.append(row)

headers = stock.pop(0)
df = pd.DataFrame(stock, columns=headers)
return df
except:
print 'Cannot Download Data for ' + ticker

if __name__ == '__main__':
import pandas as pd
import csv
import urllib2

ticker = 'AAPL'
startdate = '2015-01-01'
enddate = '2015-01-16'
df = get_data_yahoo(ticker, startdate, enddate)
print df.head()

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: