from urllib import urlretrieve import os m_codes = ['F','G','H','J','K','M','N','Q','U','V','X','Z'] #month codes of the futures dataDir = os.getenv("USERPROFILE")+'\\twpData\\vixFutures' # data directory def saveVixFutureData(year,month, path): ''' Get future from CBOE and save to file ''' fName = "CFE_{0}{1}_VX.csv".format(m_codes[month],str(year)[-2:]) urlStr = "http://cfe.cboe.com/Publish/ScheduledTask/MktData/datahouse/{0}".format(fName) try: urlretrieve(urlStr,path+'\\'+fName) except Exception as e: print e if __name__ == '__main__': if not os.path.exists(dataDir): os.makedirs(dataDir) for year in range(2004,2012): for month in range(12): print 'Getting data for {0}/{1}'.format(year,month) saveVixFutureData(year,month,dataDir) print 'Data was saved to {0}'.format(dataDir)
Saturday, October 15, 2011
How to download a bunch of csv files
I'll be analyzing VIX futures data, so to start with, I need all the files from CBOE. They use a consistent format for file names, which is easy to generate. The following script creates a data directory and then downloads all csv files for the period 2004-2011. As you can see, not much coding is required, less than 30 lines!
Subscribe to:
Post Comments (Atom)
This comment has been removed by a blog administrator.
ReplyDelete