Advertisement
Guest User

Untitled

a guest
Dec 6th, 2019
170
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 1.38 KB | None | 0 0
  1. from flask import Flask, render_template, request
  2. from flask_sqlalchemy import SQLAlchemy
  3. import requests
  4.  
  5. app = Flask(__name__)
  6. app.config['SQLALCHEMY_TRACK_MODIFICATIONS'] = False
  7. app.config['SQLALCHEMY_DATABASE_URI'] = 'sqlite:////test.db'
  8. db = SQLAlchemy(app)
  9.  
  10.  
  11. class Currance(db.Model):
  12.     id = db.Column(db.Integer, primary_key=True)
  13.     name = db.Column(db.String(80), unique=True)
  14.     rate = db.Column(db.String(120))
  15.  
  16.     def __init__(self, name, rate):
  17.         self.name = name
  18.         self.rate = rate
  19.  
  20.     def __repr__(self):
  21.         return '<Currance %r, %r>' % (self.name, self.rate)
  22.  
  23.  
  24. db.create_all()
  25.  
  26. @app.route('/test')
  27. def test():
  28.  
  29.     url = "http://www.nbrb.by/API/ExRates/Rates?Periodicity=0"
  30.     all_courses = requests.get(url).json()
  31.     courses = []  
  32.  
  33.     for k in all_courses:
  34.         n = k["Cur_Name"], k["Cur_OfficialRate"]
  35.         courses.append(n)
  36.        
  37.     for s in courses:
  38.         print(s)
  39.         if db.session.query(Currance).filter_by(name=s[0]).count() < 1:
  40.             c = Currance(s[0], s[1])
  41.             db.session.add(c)
  42.         else:
  43.            c = db.session.query(Currance).filter_by(name=s[0])          
  44.            c.rate = s[1]          
  45.  
  46.     db.session.commit()    
  47.     return render_template ('test.html', curr = Currance.query.all())
  48.    
  49.  
  50. if __name__ == '__main__':
  51.     app.debug = True
  52.     app.run()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement