diff --git a/main.py b/main.py index 261e979..ae03c17 100644 --- a/main.py +++ b/main.py @@ -60,5 +60,5 @@ def get_proxy(proxy_type=ProxyType.BRIGHT_DATA): if __name__ == '__main__': # 修改联系人行,结束联系人行 第三个参数store等于0的时候是随机,传入1的时候是总店 - start_book(616, 616, store_choose_state=0, mode=ModeEnum.AUTOMATIC) + start_book(616, 616, store_choose_state=1, mode=ModeEnum.AUTOMATIC) # recheck_the_captcha_error_contacts(store_type=0, mode=ModeEnum.AUTOMATIC, on_no_contact_found=lambda: None) diff --git a/src/check_results.py b/src/check_results.py index 31e6657..0f2f3c2 100644 --- a/src/check_results.py +++ b/src/check_results.py @@ -41,9 +41,9 @@ class ResultChecker: def __init__(self): self.logger = logging.getLogger("Worker") - def load_page(self, playwright, proxy, url) -> Union[str, None]: + def load_page(self, playwright, proxy, url, headless) -> Union[str, None]: try: - self.browser = playwright.webkit.launch(headless=False, timeout=90000, proxy=proxy) + self.browser = playwright.webkit.launch(headless=headless, timeout=90000, proxy=proxy) device = random.choice(params.DEVICES) self.logger.info("模拟设备: " + device) pixel_2 = self.tls.playwright.devices[device] @@ -64,14 +64,14 @@ class ResultChecker: print(error) return None - def run(self, reserve_pojo: ReserveResultPojo, firestore_collection, need_send_email=False): + def run(self, reserve_pojo: ReserveResultPojo, firestore_collection, headless=False, need_send_email=False): print("Launched worker in ", threading.current_thread().name) url = reserve_pojo.url print("url is " + url) content = None proxy = params.get_proxy(ProxyType.BRIGHT_DATA) while content is None: - content = self.load_page(self.tls.playwright, proxy, url) + content = self.load_page(self.tls.playwright, proxy, url, headless) proxy = params.get_proxy(ProxyType.BRIGHT_DATA) print(content) self.browser.close() @@ -105,19 +105,19 @@ class ResultChecker: MONGO_STORE_MANAGER.update_reserve_result(reserve_pojo.id, status) -def check_results(): +def check_results(headless=False): # get the list oracle_log_sender.send_log(msg="开始检查约会结果", subject=LOG_SUBJECT_EVENT, type=TYPE_EVENT_CHECK_RESULTS) db_manager = definitions.firebase_store_manager firestore_collection = db_manager.get_all_successful_items() reserve_list = MONGO_STORE_MANAGER.get_all_successful_items_for_day() print("size is " + str(len(reserve_list))) - start_check(reserve_list, firestore_collection, False) + start_check(reserve_list, firestore_collection, headless, need_send_email=False) reserve_list = MONGO_STORE_MANAGER.get_all_successful_items_for_day() - start_check(reserve_list, firestore_collection, True) + start_check(reserve_list, firestore_collection, headless, need_send_email=True) -def start_check(reserve_list, firestore_collection, need_send_email: bool): +def start_check(reserve_list, firestore_collection, headless: bool, need_send_email: bool): count = 0 with ThreadPoolExecutor(max_workers=20) as executor: for reserve in reserve_list: @@ -126,7 +126,7 @@ def start_check(reserve_list, firestore_collection, need_send_email: bool): print("will check result") if reserve.url != BLANK_URL: if reserve.url != WELCOME_URL: - executor.submit(ResultChecker().run, reserve, firestore_collection, + executor.submit(ResultChecker().run, reserve, firestore_collection, headless, need_send_email) else: print("status is " + reserve.accepted)