chore: depend on safe_traverse from lewy_globals, add scraper cron job
This commit is contained in:
@@ -1,23 +1,13 @@
|
|||||||
from flask import session
|
from flask import session
|
||||||
from lewy_db import baza as ldb
|
from lewy_db import baza as ldb
|
||||||
from lewy_globals import colors as c
|
from lewy_globals import colors as c
|
||||||
|
from lewy_globals import safe_traverse
|
||||||
import json
|
import json
|
||||||
import lewy_globals
|
import lewy_globals
|
||||||
import requests
|
import requests
|
||||||
import time
|
import time
|
||||||
from sqlalchemy import func
|
from sqlalchemy import func
|
||||||
|
|
||||||
def safe_traverse(obj: dict, path: list, default=None):
|
|
||||||
result = obj
|
|
||||||
try:
|
|
||||||
for x in path:
|
|
||||||
result = result[x]
|
|
||||||
except (KeyError, TypeError):
|
|
||||||
result = default
|
|
||||||
print(f"safe_traverse: error reading {' -> '.join(path)} - returning: {default}")
|
|
||||||
finally:
|
|
||||||
return result
|
|
||||||
|
|
||||||
class scraper:
|
class scraper:
|
||||||
|
|
||||||
headers = {
|
headers = {
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
from argparse import ArgumentParser
|
from argparse import ArgumentParser
|
||||||
from flask import Flask, Response, render_template
|
from flask import Flask, Response, render_template
|
||||||
from flask_apscheduler import APScheduler
|
from flask_apscheduler import APScheduler
|
||||||
from fs_scraper import scraper as scr
|
from fs_scraper import scraper
|
||||||
from lewy_globals import colors as c
|
from lewy_globals import colors as c
|
||||||
import lewy_api
|
import lewy_api
|
||||||
import lewy_db
|
import lewy_db
|
||||||
@@ -13,7 +13,7 @@ import time
|
|||||||
app = Flask(__name__)
|
app = Flask(__name__)
|
||||||
app_host = "None"
|
app_host = "None"
|
||||||
app_port = "None"
|
app_port = "None"
|
||||||
scrape = None
|
scr = None
|
||||||
|
|
||||||
def setup():
|
def setup():
|
||||||
# sanity check: make sure config is set
|
# sanity check: make sure config is set
|
||||||
@@ -79,7 +79,7 @@ def setup():
|
|||||||
app.add_url_rule('/api/<path:received_request>', view_func=lewy_api.api_global_catchall)
|
app.add_url_rule('/api/<path:received_request>', view_func=lewy_api.api_global_catchall)
|
||||||
|
|
||||||
db = lewy_globals.setupDb(app, config)
|
db = lewy_globals.setupDb(app, config)
|
||||||
scraper = scr()
|
scr = scraper()
|
||||||
|
|
||||||
with app.app_context():
|
with app.app_context():
|
||||||
db.create_all()
|
db.create_all()
|
||||||
@@ -97,8 +97,7 @@ def every5seconds():
|
|||||||
|
|
||||||
def every2hours():
|
def every2hours():
|
||||||
# zaktualizuj bazę danych scrapując FS
|
# zaktualizuj bazę danych scrapując FS
|
||||||
# ...
|
scr.aktualizuj_dane()
|
||||||
# scraper.aktualizuj_dane()
|
|
||||||
return
|
return
|
||||||
|
|
||||||
@app.route('/<string:val>', methods=['GET'])
|
@app.route('/<string:val>', methods=['GET'])
|
||||||
|
|||||||
@@ -23,9 +23,9 @@ def safeTraverse(obj: dict, path: list, default=None):
|
|||||||
try:
|
try:
|
||||||
for x in path:
|
for x in path:
|
||||||
result = result[x]
|
result = result[x]
|
||||||
except KeyError:
|
except (KeyError, TypeError):
|
||||||
result = default
|
result = default
|
||||||
# print(f"error reading: {' -> '.join(path)} - returning: {default}")
|
print(f"error reading: {' -> '.join(path)} - returning: {default}")
|
||||||
finally:
|
finally:
|
||||||
return result
|
return result
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user