def waiting(window): logger.debug('待ち状態') while True: phase_name = phase.getPhaseName(window) if phase_name is None: justwait.justWait(window, 5) continue else: logger.info('待ち状態を抜けます') break
def result(window): while True: justwait.justWait(window, 5) a = phase.getPhaseName(window) if a != '結果フェーズ': break else: try: window.find_element_by_tag_name('svg') except NoSuchElementException: closepriority.close(window) questioning.question(window) break else: continue
def create__cannot_questioning(window): justwait.justWait(window, 2) if '結果フェーズ' == phase.getPhaseName(window): if isExistClassElement(window, '.modal'): window.find_element_by_xpath('/html/body/div/div[1]/div/div/div[1]/button/span').click() leave.leave(window) justwait.justWait(window, 3) deleteroom.delete(window) justwait.justWait(window, 3) createroom.create(window) justwait.justWait(window, 1) options.setting(window) justwait.justWait(window, 1) enter.enter(window) justwait.justWait(window, 1) waitphase.waiting(window)
def create__cannot_voting(window): """ こちらの場合、いつまで経っても回答フェーズであるため フェーズ名を監視します """ justwait.justWait(window, 2) if '回答フェーズ' == phase.getPhaseName(window): leave.leave(window) justwait.justWait(window, 3) deleteroom.delete(window) justwait.justWait(window, 3) createroom.create(window) justwait.justWait(window, 1) options.setting(window) justwait.justWait(window, 1) enter.enter(window) justwait.justWait(window, 1) waitphase.waiting(window)
def init(): driver = webdriver.Firefox() logger.info("connect bigiri-ch") driver.get(config.BIGIRI_URL) # driver.maximize_window() justwait.justWait(driver, 5) logger.info("create room") createroom.create(driver) signin.signin(driver) options.setting(driver) logger.info("enter room") enter.enter(driver) logger.info("waiting...") waitphase.waiting(driver) while True: logger.info("answer phase") answerphase.answer(driver) if leaveflag.flag(driver): logger.info("post process") csvfiledownload.csvDL(driver) break if '回答フェーズ' == phase.getPhaseName(driver): logger.info("recreate room") newroomcreate.create__cannot_voting(driver) logger.info("vote phase") votephase.vote(driver) logger.info("result phase") resultphase.result(driver) newroomcreate.create__cannot_questioning(driver) logger.info("leave room") leave.leave(driver) logger.info("delete room") deleteroom.delete(driver) driver.close()