import logging from flask import Flask from flask_crontab import Crontab from app.worker.orders_worker import OrdersWorker from app.config import Config app = Flask(__name__) crontab = Crontab(app) # Setup logging handler = logging.FileHandler(Config.LOGGING_LOCATION) handler.setLevel(Config.LOGGING_LEVEL) formatter = logging.Formatter(Config.LOGGING_FORMAT) handler.setFormatter(formatter) app.logger.addHandler(handler) @app.route("/") def etl(): return "ETL app!" @crontab.job(minute="*/5") def process_data(): worker = OrdersWorker() worker.process()
import datetime from flask import Flask, session, render_template, request from flask_sqlalchemy import SQLAlchemy from flask_migrate import Migrate from flask_login import LoginManager from flask_wtf.csrf import CSRFProtect from flask_crontab import Crontab from app import version db = SQLAlchemy() migrate = Migrate() login = LoginManager() login.login_view = 'auth.login' csrf = CSRFProtect() crontab = Crontab() def create_app(config_class=None): # Make sure the instance path is within the ./data folder. data_instance_path = os.path.realpath(os.path.join(os.path.dirname(os.path.realpath(__file__)), '..', 'data', 'instance')) app = Flask(__name__, instance_path=data_instance_path, instance_relative_config=True) try: os.makedirs(app.instance_path) except OSError: pass # First we load everything we need in order to end up with a working app. app.config['SQLALCHEMY_DATABASE_URI'] = 'sqlite:///' + os.path.join(app.instance_path, 'crackerjack.sqlite3')
# Configure loggger if not os.path.isdir(LOGS_FOLDER): os.mkdir(LOGS_FOLDER) logger.add(os.path.join(LOGS_FOLDER, LOGS_FILE), rotation='500MB') # Flask application application = Flask(__name__) # CORS setup CORS(application) # Crontab configurations crontab = Crontab(application) @crontab.job(minute='0,5,10,15,20,25,30,35,40,45,50,55') def schedule_speed_test(): dao = SpeedTestDAO() dao.save_test(run_speed_test()) # Add HTML endpoints # Flask Rest_plus API api = Api(app=application) # Add API endpoints api.add_namespace(speedtest_api, '/spdtest')
import codecs import atexit from flask import Flask, render_template import urllib3 import requests import csv from flask_crontab import Crontab import pandas as pd app = Flask(__name__) cron = Crontab(app) class LocationsData: def __init__(self, state='NA', country='NA', latestCount=0, prevDayCount=0): self.state = state self.country = country self.latestCount = latestCount self.prevDayCount = prevDayCount #self.latestTotalCases=latestTotalCases #self.diffFromPrevDay=diffFromPrevDay #* */1 * * * *