|
@@ -1,20 +1,21 @@
|
|
|
"""Main app"""
|
|
|
|
|
|
-from datetime import datetime, timedelta
|
|
|
-import random
|
|
|
import time
|
|
|
|
|
|
-from app import scheduler
|
|
|
+from app import scheduler, session
|
|
|
from app.api import get_professors
|
|
|
from app.database import get_latest_professor, save_professors
|
|
|
|
|
|
|
|
|
def job_update_department(state_id, department_type):
|
|
|
"""Update department professors"""
|
|
|
- # last_professor = get_last_professor(state_id, department_type)
|
|
|
- professors = get_professors(state_id, department_type, None)
|
|
|
+ latest_professor = get_latest_professor(state_id, department_type)
|
|
|
+ date = None
|
|
|
+ if latest_professor:
|
|
|
+ date = latest_professor.date_time
|
|
|
+ professors = get_professors(state_id, department_type, date)
|
|
|
print_professors(professors)
|
|
|
- # save_professors(state_id, department_type, professors)
|
|
|
+ save_professors(state_id, department_type, professors)
|
|
|
|
|
|
def print_professors(professors):
|
|
|
"""Print professors"""
|
|
@@ -22,21 +23,43 @@ def print_professors(professors):
|
|
|
print('{:30} {:2} {:>25}'.format(
|
|
|
professor['name'],
|
|
|
professor['points'],
|
|
|
- professor['date'].strftime('%d %B %Y %H:%M'),
|
|
|
+ professor['date_time'].strftime('%d %B %Y %H:%M'),
|
|
|
))
|
|
|
|
|
|
-
|
|
|
-if __name__ == '__main__':
|
|
|
- # jobs
|
|
|
- job_update_department(2788, 6)
|
|
|
+def add_update_department(state_id, department_type):
|
|
|
+ """Add jobs"""
|
|
|
scheduler.add_job(
|
|
|
job_update_department,
|
|
|
'cron',
|
|
|
- args=[2788, 6],
|
|
|
- id='vn_update_department',
|
|
|
+ args=[state_id, department_type],
|
|
|
+ id='{}_{}'.format(state_id, department_type),
|
|
|
replace_existing=True,
|
|
|
hour='20'
|
|
|
)
|
|
|
|
|
|
- while True:
|
|
|
- time.sleep(100)
|
|
|
+if __name__ == '__main__':
|
|
|
+ # jobs
|
|
|
+ # job_update_department(2788, 6)
|
|
|
+ # VN
|
|
|
+ # uranium
|
|
|
+ job_update_department(2788, 6)
|
|
|
+ # gold
|
|
|
+ job_update_department(2788, 2)
|
|
|
+ # construction
|
|
|
+ job_update_department(2788, 1)
|
|
|
+ # oil
|
|
|
+ job_update_department(2788, 3)
|
|
|
+ # Belgium
|
|
|
+ # gold
|
|
|
+ job_update_department(2604, 2)
|
|
|
+ # De Provincien
|
|
|
+ # gold
|
|
|
+ job_update_department(2620, 2)
|
|
|
+
|
|
|
+ try:
|
|
|
+ while True:
|
|
|
+ time.sleep(100)
|
|
|
+ except KeyboardInterrupt:
|
|
|
+ print('Exiting application')
|
|
|
+ session.close()
|
|
|
+ exit()
|