Ejemplo n.º 1
0
def load_quotes(product_entry, product_data):
    """Load quotes to database from API request payload"""

    newprice = product_data['data']['NEW']  #acess new products' price history
    newtime = product_data['data'][
        'NEW_time']  #access new products' timestamps

    if (newprice == []):
        newprice = product_data['data']['AMAZON']
        newtime = product_data['data']['AMAZON_time']

    if (math.isnan(newprice[0])):
        newprice = product_data['data']['AMAZON']
        newtime = product_data['data']['AMAZON_time']

    #loop over entries
    for i in range(len(newprice)):

        current_time = newtime[i]
        current_price = newprice[i]

        quote_entry = Quote(date_time=current_time, price=current_price)

        product_entry.quotes.append(quote_entry)

    db.session.add(product_entry)
    db.session.commit()
Ejemplo n.º 2
0
def get_unique_quote(quote):
    '''
    Searches Temporary table for quote duplicates and returns the valid, unique quote, which is the one with the MAX rown number.
    '''
    search_substring = quote.text[:duplicate_search_substring_threshold]
    search_substring = clean_quote_text(search_substring)
    sql = f"""
    WITH temp AS
    (
        SELECT *, row_number() over (order by QuoteId) RowNumber
        FROM Temporary
        WHERE Text LIKE \"%{search_substring}%\"
    )
    SELECT *
    FROM temp
    WHERE RowNumber = (SELECT max(RowNumber) FROM temp)
    """

    result = db.query(sql)
    if result:
        result_tuple = result[0]
        return Quote(text=result_tuple[1],
                     date=result_tuple[2],
                     page=result_tuple[3],
                     location=result_tuple[4],
                     book_id=result_tuple[5],
                     author_id=result_tuple[6])
    return quote
Ejemplo n.º 3
0
def load_quotes():
    """Load quote information into database."""

    data_file = open('seed_data/quotes_2.csv', 'rU')
    csv_file = csv.reader(data_file)

    for row in csv_file:
        content = row[0]
        img_url = row[1]
        author = row[2]
        sentiment_id = row[3]

        quote = Quote(content=content,
                      img_url=img_url,
                      author=author,
                      sentiment_id=sentiment_id)

        # Adding data to the session
        db.session.add(quote)

    # Commiting data to database
    db.session.commit()
def add_quote(quote_value, hashtag, media, link,):
    quote = Quote(quote=quote_value, hashtag = hashtag, media=media, link= link)
    session.add(quote)
    session.commit()