Пример #1
0
def book_class(job):
    objdump.stdout(job)
    time = dates.parse(job['time'], TIME_FORMAT)

    c = None

    # Wait for available
    while True:
        try:
            c = HUT.get_class(MEMBER_INFO['clubs'][job['club']], job['class'],
                              time, time)
            if not c:
                raise Exception('no class found')
        except Exception as e:
            print(str(e))
            print('waiting 10 seconds before retry check')
            sleep(10)
        else:
            break

    objdump.stdout(c)

    while True:
        try:
            HUT.do_login()
            HUT.book_class(c['class_id'], MEMBER_INFO['member_id'])
        except Exception as e:
            print(str(e))
            print('waiting 5 seconds before retry book')
            sleep(5)
        else:
            break

    CRAWLER_SMTP.send_email(
        HUT.email, 'Marcação de aula no Fitness Hut',
        'Bom dia :D\n\n\tMarquei uma aula de {} de {} no {} do clube de {} que começa hoje, às {}.\n\nAproveita, e bom treino\n\t{}'
        .format(c['class_name'], c['duration'], c['studio'], job['club'],
                job['time'], CRAWLER_SMTP.name))
Пример #2
0
def book_class(job):
    objdump.stdout(job)
    time = dates.parse(job['time'], TIME_FORMAT)

    c = None

    # Wait for available
    while True:
        try:
            c = HUT.get_class(MEMBER_INFO['clubs'][job['club']], job['class'], time, time)
            if not c:
                raise Exception('no class found')
        except Exception as e:
            print(str(e))
            print('waiting 10 seconds before retry check')
            sleep(10)
        else:
            break

    objdump.stdout(c)

    while True:
        try:
            HUT.do_login()
            HUT.book_class(c['class_id'], MEMBER_INFO['member_id'])
        except Exception as e:
            print(str(e))
            print('waiting 5 seconds before retry book')
            sleep(5)
        else:
            break

    CRAWLER_SMTP.send_email(HUT.email, 'Marcação de aula no Fitness Hut',
        'Bom dia :D\n\n\tMarquei uma aula de {} de {} no {} do clube de {} que começa hoje, às {}.\n\nAproveita, e bom treino\n\t{}'.format(
            c['class_name'], c['duration'], c['studio'], job['club'], job['time'], CRAWLER_SMTP.name
        ))
Пример #3
0
def member_info_update():
    global MEMBER_INFO
    HUT.do_login()
    MEMBER_INFO = HUT.get_member_info()
    print('Member info:')
    objdump.stdout(MEMBER_INFO)
    print('Today classes for {} club:'.format(MEMBER_INFO['club_name']))
    objdump.stdout(HUT.get_classes(MEMBER_INFO['club_id']))
    print('Tomorrow classes for {} club:'.format(MEMBER_INFO['club_name']))
    objdump.stdout(HUT.get_classes(MEMBER_INFO['club_id'], tomorrow=True))
    if SCHEDULER:
        print('Jobs:')
        SCHEDULER.print_jobs()
Пример #4
0
def member_info_update():
    global MEMBER_INFO
    HUT.do_login()
    MEMBER_INFO = HUT.get_member_info()
    print('Member info:')
    objdump.stdout(MEMBER_INFO)
    print('Today classes for {} club:'.format(MEMBER_INFO['club_name']))
    objdump.stdout(HUT.get_classes(MEMBER_INFO['club_id']))
    print('Tomorrow classes for {} club:'.format(MEMBER_INFO['club_name']))
    objdump.stdout(HUT.get_classes(MEMBER_INFO['club_id'], tomorrow=True))
    if SCHEDULER:
        print('Jobs:')
        SCHEDULER.print_jobs()