コード例 #1
0
ファイル: update.py プロジェクト: ack8006/dataAggregation2
 def getNewAssetForUpdate(self):
     db = dbconnection.start()
     with closing(db.cursor()) as cur:
         newFX = self.checkForNewPriorityCurrencies(cur)
         newFX = [[x[0],None] for x in newFX]
     db.close()
     return newFX
コード例 #2
0
def main():
    data = []
    for x in xrange(1,10):
    #for x in range(1,2):
        url ='''https://www.quandl.com/api/v2/datasets.json?query=*&source_code=CURRFX&per_page=300&page={}&auth_token=ZiSfvVWczC5Q3dGUvNM2'''.format(str(x))
        page = requests.get(url)
        page = page.json()
        newdata = [[pair['code'],pair['description'],pair['from_date'], pair['to_date']]
                    for pair in page['docs'] if pair['code'].startswith('USD')]

        for pair in newdata:
            check = False
            for pair2 in data:
                if pair[0]==pair2[0]:
                    check = True
            if not check:
                data.append(pair)
    print data

    db = dbconnection.start()
    with closing(db.cursor()) as cur:
        for pair in data:
            code = pair[0]
            name = pair[1].split('1 U.S. Dollar in ',1)[1].split('.',1)[0]
            fromdate = datetime.datetime.strptime(pair[2], "%Y-%m-%d").date()
            todate = datetime.datetime.strptime(pair[3], "%Y-%m-%d").date()
            cur.execute('''INSERT INTO currencies
                        (code, name, fromdate, todate) VALUES
                        (%s, %s, %s, %s)''',
                        (code, name, fromdate, todate,))
        db.commit()
    db.close()
コード例 #3
0
ファイル: update.py プロジェクト: ack8006/dataAggregation2
 def getNewAssetForUpdate(self):
     db = dbconnection.start()
     with closing(db.cursor()) as cur:
         newFX = self.checkForNewPriorityCurrencies(cur)
         newFX = [[x[0], None] for x in newFX]
     db.close()
     return newFX
コード例 #4
0
ファイル: update.py プロジェクト: ack8006/dataAggregation2
    def getExistingAssetsForUpdate(self):
        db = dbconnection.start()
        with closing(db.cursor()) as cur:
            upFX = self.checkForUpdates(cur)

        db.close()
        upFX = [[x[0],x[1]] for x in upFX]
        return upFX
コード例 #5
0
ファイル: update.py プロジェクト: ack8006/dataAggregation2
    def getExistingAssetsForUpdate(self):
        db = dbconnection.start()
        with closing(db.cursor()) as cur:
            upFX = self.checkForUpdates(cur)

        db.close()
        upFX = [[x[0], x[1]] for x in upFX]
        return upFX
コード例 #6
0
ファイル: scraper.py プロジェクト: ack8006/recurseWorkflow
 def databasePersons(self):
     db = dbconnection.start()
     with closing(db.cursor()) as cur:
         for personsDict in self.personsList:
             #print personsDict
             cur.execute('''INSERT INTO recursers
                 (name, phone, job, skills, gitUser, twitterUser, email, batchname)
                 VALUES (%s, %s, %s, %s, %s, %s, %s, %s)''',
                 (personsDict.get('Name'), personsDict.get('Phone'),personsDict.get('Job'),
                 personsDict.get('Skills'),personsDict.get('Links').get('GitHub'),
                 personsDict.get('Links').get('Twitter'),personsDict.get('Links').get('Email'),
                  self.batchTitle,))
         db.commit()
         cur = self.checkBatches(cur)
         db.commit()
     db.close()
コード例 #7
0
def main():
    data = []
    for x in xrange(1, 10):
        #for x in range(1,2):
        url = '''https://www.quandl.com/api/v2/datasets.json?query=*&source_code=CURRFX&per_page=300&page={}&auth_token=ZiSfvVWczC5Q3dGUvNM2'''.format(
            str(x))
        page = requests.get(url)
        page = page.json()
        newdata = [[
            pair['code'], pair['description'], pair['from_date'],
            pair['to_date']
        ] for pair in page['docs'] if pair['code'].startswith('USD')]

        for pair in newdata:
            check = False
            for pair2 in data:
                if pair[0] == pair2[0]:
                    check = True
            if not check:
                data.append(pair)
    print data

    db = dbconnection.start()
    with closing(db.cursor()) as cur:
        for pair in data:
            code = pair[0]
            name = pair[1].split('1 U.S. Dollar in ', 1)[1].split('.', 1)[0]
            fromdate = datetime.datetime.strptime(pair[2], "%Y-%m-%d").date()
            todate = datetime.datetime.strptime(pair[3], "%Y-%m-%d").date()
            cur.execute(
                '''INSERT INTO currencies
                        (code, name, fromdate, todate) VALUES
                        (%s, %s, %s, %s)''', (
                    code,
                    name,
                    fromdate,
                    todate,
                ))
        db.commit()
    db.close()
コード例 #8
0
ファイル: scraper.py プロジェクト: ack8006/recurseWorkflow
 def databasePersons(self):
     db = dbconnection.start()
     with closing(db.cursor()) as cur:
         for personsDict in self.personsList:
             #print personsDict
             cur.execute(
                 '''INSERT INTO recursers
                 (name, phone, job, skills, gitUser, twitterUser, email, batchname)
                 VALUES (%s, %s, %s, %s, %s, %s, %s, %s)''', (
                     personsDict.get('Name'),
                     personsDict.get('Phone'),
                     personsDict.get('Job'),
                     personsDict.get('Skills'),
                     personsDict.get('Links').get('GitHub'),
                     personsDict.get('Links').get('Twitter'),
                     personsDict.get('Links').get('Email'),
                     self.batchTitle,
                 ))
         db.commit()
         cur = self.checkBatches(cur)
         db.commit()
     db.close()
コード例 #9
0
#Indices = [['^DJI', 'Dow Jones Industrial Average', 'USA', 1],
#           ['^GSPC', 'S&P 500', 'USA', 1],
#           ['^IXIC', 'NASDAQ Composite', 'USA', 1],
#           ['^RUT', 'Russell 2000','USA',2],
#           ['^SSEC', 'Shanghai Composite', 'Asia',1],
#           ['^HSI', 'Hang Seng', 'Asia',1],
#           ['^N225', 'Nikkei 225', 'Asia',1],
#           ['^GSPTSE', 'S&P TSX Composite', 'Americas',2],
#           ['^FCHI','CAC 40','Europe',1],
#           ['^GDAXI','DAX','Europe',1],
#           ['^SSMI','Swiss Market','Europe',2],
#           ['^FTSE','FTSE 100','Europe',1],
#           ]

with open('Indicies.csv', 'rb') as csvfile:
    data = [row for row in csv.reader(csvfile.read().splitlines())][1:]

db = dbconnection.start()
with closing(db.cursor()) as cur:
    for index in data:
        cur.execute(
            '''INSERT INTO indices
                    (code, name , datasource) VALUES
                    (%s,%s,'YahooQuandl')''', (
                index[0],
                index[2],
            ))

    db.commit()
db.close()
コード例 #10
0
ファイル: update.py プロジェクト: ack8006/dataAggregation2
 def uploadData(self, data):
     db = dbconnection.start()
     with closing(db.cursor()) as cur:
         cur = self.curConstructor(cur, data)
         db.commit()
     db.close()
コード例 #11
0
import psycopg2
import dbconnection
from contextlib import closing


db = dbconnection.start()

with closing(db.cursor()) as cur:
    cur.execute('''CREATE TABLE currencies (
                id SERIAL PRIMARY KEY,
                code VARCHAR(8) NOT NULL UNIQUE,
                name text NOT NULL,
                fromdate date,
                todate date
                priority int)''')

    cur.execute('''CREATE TABLE dailyFXprices (
                id SERIAL PRIMARY KEY,
                code VARCHAR(8) NOT NULL,
                rate numeric NOT NULL,
                highprice numeric,
                lowprice numeric,
                date date)''')

    db.commit()
db.close()


コード例 #12
0
ファイル: update.py プロジェクト: ack8006/dataAggregation2
 def uploadData(self, data):
     db = dbconnection.start()
     with closing(db.cursor()) as cur:
         cur = self.curConstructor(cur, data)
         db.commit()
     db.close()