__main__.py 1.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172
  1. """Main app"""
  2. import sys
  3. import time
  4. from app import SCHEDULER, LOGGER, jobs, job_storage
  5. def print_professors(professors):
  6. """Print professors"""
  7. for professor in professors:
  8. print('{:30} {:2} {:>25}'.format(
  9. professor['name'],
  10. professor['points'],
  11. professor['date_time'].strftime('%d %B %Y %H:%M'),
  12. ))
  13. def add_update_department(state_id, department_type):
  14. """Add jobs"""
  15. SCHEDULER.add_job(
  16. jobs.update_department,
  17. 'cron',
  18. args=[state_id, department_type],
  19. id='{}_{}'.format(state_id, department_type),
  20. replace_existing=True,
  21. hour='20'
  22. )
  23. def add_send_progress_message(state_id, department_type, language):
  24. """Add send_message"""
  25. SCHEDULER.add_job(
  26. jobs.send_progress_message,
  27. 'cron',
  28. args=[state_id, department_type, language],
  29. id='send_message_{}_{}'.format(state_id, department_type),
  30. replace_existing=True,
  31. hour='20',
  32. minute='10'
  33. )
  34. if __name__ == '__main__':
  35. # jobs
  36. # jobs.update_department(2788, 6)
  37. # jobs.send_progress_message(2788, 6, 'nl')
  38. # Jobs
  39. JOBS = job_storage.get_jobs()
  40. for job in JOBS:
  41. LOGGER.info(
  42. 'For "%s" add department "%s" update',
  43. job['state_id'],
  44. job['department_type']
  45. )
  46. SCHEDULER.add_job(
  47. jobs.update_department,
  48. 'cron',
  49. args=[job['state_id'], job['department_type']],
  50. id='{}_{}'.format(job['state_id'], job['department_type']),
  51. replace_existing=True,
  52. hour='20'
  53. )
  54. # progress message VN uranium
  55. add_send_progress_message(2788, 6, 'nl')
  56. try:
  57. while True:
  58. time.sleep(100)
  59. except KeyboardInterrupt:
  60. print('Exiting application')
  61. SCHEDULER.shutdown()
  62. sys.exit()