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()
Download U.S. Stock Data form Yahoo Finance
最新推荐文章于 2021-11-12 08:19:35 发布