1
|
|
|
import logging |
2
|
|
|
import sys |
3
|
|
|
|
4
|
|
|
from dotenv import load_dotenv |
5
|
|
|
|
6
|
|
|
from src.new_data_processors.SR_table_processors.category_prediction.category_prediction import CategoryPredictor |
7
|
|
|
from src.new_data_processors.SR_table_processors.files import NewFilesRegistrar |
8
|
|
|
from src.new_data_processors.helper_table_updaters.countries import CountriesUpdater |
9
|
|
|
from src.new_data_processors.helper_table_updaters.companies import CompaniesUpdater |
10
|
|
|
from src.new_data_processors.helper_table_updaters.operating_sites import ( |
11
|
|
|
OperatingSitesUpdater, |
12
|
|
|
) |
13
|
|
|
from src.new_data_processors.SR_table_processors.companies.MÁV import MavUpdater |
14
|
|
|
from src.new_data_processors.SR_table_processors.companies.GYSEV import GysevUpdater |
15
|
|
|
from src.OSM_data_processors.mapper import Mapper |
16
|
|
|
|
17
|
|
|
|
18
|
|
|
# future: mark all packages as namespace packages in the IDE when https://youtrack.jetbrains.com/issue/PY-55212/ is fixed |
19
|
|
|
|
20
|
|
|
|
21
|
|
|
def main( |
22
|
|
|
demonstration=True, |
23
|
|
|
show_lines_with_no_data=True, |
24
|
|
|
) -> None: |
25
|
|
|
configure_logging(demonstration) |
26
|
|
|
logging.getLogger(__name__).info("Program started...") |
27
|
|
|
|
28
|
|
|
load_dotenv() |
29
|
|
|
|
30
|
|
|
# CountriesUpdater().run() |
31
|
|
|
# CompaniesUpdater().run() |
32
|
|
|
# OperatingSitesUpdater().run() |
33
|
|
|
|
34
|
|
|
# NewFilesRegistrar().run() |
35
|
|
|
|
36
|
|
|
with CategoryPredictor() as category_predictor: |
37
|
|
|
MavUpdater(category_predictor).run() |
38
|
|
|
GysevUpdater(category_predictor).run() |
39
|
|
|
|
40
|
|
|
# Mapper(show_lines_with_no_data).run() |
41
|
|
|
|
42
|
|
|
logging.getLogger(__name__).info("...program finished!") |
43
|
|
|
|
44
|
|
|
|
45
|
|
|
def configure_logging(demonstration: bool) -> None: |
46
|
|
|
if demonstration: |
47
|
|
|
logging.basicConfig( |
48
|
|
|
encoding="utf-8", |
49
|
|
|
handlers=[ |
50
|
|
|
logging.StreamHandler(sys.stdout), |
51
|
|
|
logging.FileHandler("kalauz.log"), |
52
|
|
|
], |
53
|
|
|
format="%(asctime)s [%(levelname)s]: %(message)s", |
54
|
|
|
level=logging.INFO, |
55
|
|
|
) |
56
|
|
|
else: |
57
|
|
|
logging.basicConfig( |
58
|
|
|
encoding="utf-8", |
59
|
|
|
handlers=[ |
60
|
|
|
logging.StreamHandler(), |
61
|
|
|
logging.FileHandler("kalauz.log"), |
62
|
|
|
], |
63
|
|
|
format='%(asctime)s [%(levelname)s] "%(pathname)s:%(lineno)d": %(message)s', |
64
|
|
|
level=logging.DEBUG, |
65
|
|
|
) |
66
|
|
|
|
67
|
|
|
|
68
|
|
|
if __name__ == "__main__": |
69
|
|
|
main() |
70
|
|
|
|