Hey everyone, I'm trying to run this code.

import os
import pickle
#import urllib2
from urllib.request import urlopen
#import cookielib
import http.cookiejar
import re
import time
import numpy as np
#import pylab as pl
 
# symbol - USDEUR=X - problem that the server sometimes returns 0.0
def getSpotPrice(symbol):
    numberOfAttempts = 0
    while numberOfAttempts < 10:
        url = 
'http://download.finance.yahoo.com/d/quotes.csv?s='+symbol+'&f=l1&e=.cs'
        fxrate_pure = urllib2.urlopen(url).read()
        fxrate = fxrate_pure.strip()
        if fxrate != "0.00":
            return fxrate
        else:
            numberOfAttempts += 1
            time.sleep(1)
    raise Exception("Unable to obtain market data from Yahoo! ... wrong 
ticker???")
 
# symbol = the yahoo ticker; the expected tickers of the components contain 
alphanumerical characters or dot or hyphen; if the yahoo format changes, 
nothing is returned
def getConstituentsOfAnIndexFromYahoo(symbol):
    url = 'http://finance.yahoo.com/q/cp?s=%s' % symbol
    p = re.compile('<td class=\"yfnc_tabledata1\"><b><a 
href=\"/q\?s=([A-Z0-9\.\-]*)\">')
    components = []
    pageIndex = 0
    finished = False
    while not finished:
        if pageIndex == 0:
            actualUrl = url
        else:
            actualUrl = url + "&c=" + str(pageIndex)
        pageResults = p.findall(urllib2.urlopen(actualUrl).read())
        if len(pageResults) == 0:
            finished = True
        else:
            components.extend(pageResults)
            pageIndex+=1
    return components
 
# prices = data[:,6] or prices = data[:, title.index("Adj Close")], 
pl.num2date(data[:,1]) back dates
# syntax 
http://ichart.yahoo.com/table.csv?s={Yahoo.Symbol.[isin]}&a={Von.M-1}&b={Von.T}&c={Von.J}&d={Bis.M}&e={Bis.T}&f={Bis.
 J}&g=d&y=0&z=jdsu&ignore=.csv
def getNumpyHistoricalTimeseries(symbol,fromDate, toDate):
    f = urllib2.urlopen('http://ichart.yahoo.com/table.csv?a='+ 
str(fromDate.month -1) +'&c='+ str(fromDate.year) +'&b=' + str(fromDate.day) + 
'&e='+  str(toDate.day) + '&d='+ str(toDate.month-1) +'&g=d&f=' + 
str(toDate.year) + '&s=' + symbol + '&ignore=.csv')
    header = f.readline().strip().split(",")
    #return np.loadtxt(f, dtype=np.float, delimiter=",", converters={0: 
pl.datestr2num})

I commented out the import pylab as pl because I couldn't get the 
matplotlib.pylab import working.  So, anyway, I hit F5, and it seems to run, 
but it doesn't really do anything.  Isn't this either supposed to be 
downloading data from the web, or throwing an error so I can troubleshoot, and 
try to figure out what's going on?  It's hard to troubleshoot, when you don't 
get any error.  Does this work for others?

Thanks.
-- 
https://mail.python.org/mailman/listinfo/python-list

Reply via email to