feat: add a basic example of scraper usage
This commit is contained in:
@@ -7,9 +7,15 @@ class scraper:
|
|||||||
'x-fsign': 'SW9D1eZo'
|
'x-fsign': 'SW9D1eZo'
|
||||||
}
|
}
|
||||||
|
|
||||||
def __init__:
|
def __init__(self):
|
||||||
pass
|
pass
|
||||||
|
|
||||||
def pobierzDaneNajlepszegoSportowcaNaSwiecie() -> dict:
|
def pobierzDaneNajlepszegoSportowcaNaSwiecie(self) -> dict:
|
||||||
response = requests.get('https://3.flashscore.ninja/3/x/feed/plm_MVC8zHZD_0', headers=headers)
|
response = requests.get('https://3.flashscore.ninja/3/x/feed/plm_MVC8zHZD_0', headers=headers)
|
||||||
return json.loads(response.text)
|
return json.loads(response.text)
|
||||||
|
|
||||||
|
def pobierz_pojedyncza_strone(self, zewnetrzne_id_sportowca: str = "MVC8zHZD", nr_strony: int = 0) -> dict:
|
||||||
|
if len(zewnetrzne_id_sportowca) != 8:
|
||||||
|
raise ValueError("Zewnętrzne ID sportowca powinno być długości 8!")
|
||||||
|
response = requests.get(f'https://3.flashscore.ninja/3/x/feed/plm_{zewnetrzne_id_sportowca}_{nr_strony}', headers=self.headers)
|
||||||
|
return json.loads(response.text)
|
||||||
|
|||||||
@@ -1,6 +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
|
||||||
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
|
||||||
@@ -12,11 +13,12 @@ import time
|
|||||||
app = Flask(__name__)
|
app = Flask(__name__)
|
||||||
app_host = "None"
|
app_host = "None"
|
||||||
app_port = "None"
|
app_port = "None"
|
||||||
|
scrape = None
|
||||||
|
|
||||||
def setup():
|
def setup():
|
||||||
# sanity check: make sure config is set
|
# sanity check: make sure config is set
|
||||||
# required to make `flask --app lewy run --debug` work
|
# required to make `flask --app lewy run --debug` work
|
||||||
global config, app_host, app_port
|
global config, app_host, app_port, scrape
|
||||||
try:
|
try:
|
||||||
if not config['general']:
|
if not config['general']:
|
||||||
lewy_globals.setConfig(lewy_globals.configfile)
|
lewy_globals.setConfig(lewy_globals.configfile)
|
||||||
@@ -71,6 +73,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_db.initDB(app, config)
|
db = lewy_db.initDB(app, config)
|
||||||
|
scrape = scraper()
|
||||||
|
|
||||||
with app.app_context():
|
with app.app_context():
|
||||||
db.create_all()
|
db.create_all()
|
||||||
@@ -89,6 +92,7 @@ def every5seconds():
|
|||||||
def every2hours():
|
def every2hours():
|
||||||
# zaktualizuj bazę danych scrapując FS
|
# zaktualizuj bazę danych scrapując FS
|
||||||
# ...
|
# ...
|
||||||
|
# print(scrape.pobierz_pojedyncza_strone())
|
||||||
return
|
return
|
||||||
|
|
||||||
@app.route('/<string:val>', methods=['GET'])
|
@app.route('/<string:val>', methods=['GET'])
|
||||||
|
|||||||
Reference in New Issue
Block a user