use user-agent of ios
This commit is contained in:
@@ -155,7 +155,7 @@ def read_mails():
|
|||||||
mail_reader = MailReader(mail.mail, mail.password)
|
mail_reader = MailReader(mail.mail, mail.password)
|
||||||
executor.submit(mail_reader.read_emails, mails_messages)
|
executor.submit(mail_reader.read_emails, mails_messages)
|
||||||
|
|
||||||
with ThreadPoolExecutor(max_workers=10) as executor:
|
with ThreadPoolExecutor(max_workers=20) as executor:
|
||||||
for mail in mails_messages:
|
for mail in mails_messages:
|
||||||
match = re.search(VALIDATION_URL_REGEX, mail.body)
|
match = re.search(VALIDATION_URL_REGEX, mail.body)
|
||||||
if match:
|
if match:
|
||||||
|
|||||||
@@ -32,7 +32,8 @@ class ExcelHelper:
|
|||||||
user_agent_list = []
|
user_agent_list = []
|
||||||
for user_agent_dict in user_agent_dict_list:
|
for user_agent_dict in user_agent_dict_list:
|
||||||
user_agent_str = user_agent_dict['user_agent']
|
user_agent_str = user_agent_dict['user_agent']
|
||||||
if 'Android' in user_agent_str:
|
if 'Mozilla' in user_agent_str:
|
||||||
|
if 'Android 5.1' in user_agent_str:
|
||||||
if 'Mac OS' not in user_agent_str:
|
if 'Mac OS' not in user_agent_str:
|
||||||
user_agent_list.append(user_agent_dict['user_agent'])
|
user_agent_list.append(user_agent_dict['user_agent'])
|
||||||
print(user_agent_list)
|
print(user_agent_list)
|
||||||
|
|||||||
@@ -120,7 +120,9 @@ class CommandorPage:
|
|||||||
def start_browser(self, proxy, pwright, device) -> Union[str, None]:
|
def start_browser(self, proxy, pwright, device) -> Union[str, None]:
|
||||||
try:
|
try:
|
||||||
self.browser = pwright.firefox.launch(headless=self.headless, timeout=PAGE_TIMEOUT, proxy=proxy)
|
self.browser = pwright.firefox.launch(headless=self.headless, timeout=PAGE_TIMEOUT, proxy=proxy)
|
||||||
userAgent = random.choice(params.firefox_user_agent_list)
|
# userAgent = random.choice(params.firefox_user_agent_list)
|
||||||
|
simulated_mobile = pwright.devices[device]
|
||||||
|
userAgent = simulated_mobile['user_agent']
|
||||||
print("user_agent is " + userAgent)
|
print("user_agent is " + userAgent)
|
||||||
# context = self.browser.new_context(**simulated_mobile, locale='fr-FR')
|
# context = self.browser.new_context(**simulated_mobile, locale='fr-FR')
|
||||||
context = self.browser.new_context(user_agent=userAgent, locale='fr-FR')
|
context = self.browser.new_context(user_agent=userAgent, locale='fr-FR')
|
||||||
@@ -132,12 +134,36 @@ class CommandorPage:
|
|||||||
get: () => {
|
get: () => {
|
||||||
return "iPhone";
|
return "iPhone";
|
||||||
}});
|
}});
|
||||||
}
|
}
|
||||||
""")
|
""")
|
||||||
self.page.on("load", self._on_page_loaded)
|
self.page.on("load", self._on_page_loaded)
|
||||||
self.page.on("response", self.handle_response)
|
self.page.on("response", self.handle_response)
|
||||||
self.page.goto(RDV_URL, timeout=PAGE_TIMEOUT)
|
self.page.goto(RDV_URL, timeout=PAGE_TIMEOUT)
|
||||||
return self.page.content()
|
return self.page.content()
|
||||||
|
# self.browser = pwright.webkit.launch(headless=self.headless, timeout=PAGE_TIMEOUT, proxy=proxy)
|
||||||
|
# self.logger.info("模拟设备: " + device)
|
||||||
|
# simulated_mobile = pwright.devices[device]
|
||||||
|
# context = self.browser.new_context(**simulated_mobile, locale='fr-FR')
|
||||||
|
# self.page = context.new_page()
|
||||||
|
# # hide webdriver information
|
||||||
|
# self.page.add_init_script("""() => {
|
||||||
|
# Object.defineProperty(navigator,'webdriver',{get: () => undefined});
|
||||||
|
# Object.defineProperty(navigator, 'platform', {
|
||||||
|
# get: () => {
|
||||||
|
# return "iPhone";
|
||||||
|
# }});
|
||||||
|
# }
|
||||||
|
# """)
|
||||||
|
# self.page.on("load", self._on_page_loaded)
|
||||||
|
# self.page.on("response", self.handle_response)
|
||||||
|
# self.page.goto(RDV_URL, timeout=PAGE_TIMEOUT)
|
||||||
|
# captcha_url = "geo.captcha-delivery.com/captcha"
|
||||||
|
# if captcha_url in self.page.content():
|
||||||
|
# self.logger.info("will close browser")
|
||||||
|
# self.browser.close()
|
||||||
|
# return None
|
||||||
|
# else:
|
||||||
|
# return self.page.content()
|
||||||
except Exception as error:
|
except Exception as error:
|
||||||
params.oracle_log_sender.send_error(str(error))
|
params.oracle_log_sender.send_error(str(error))
|
||||||
traceback.print_exc(*sys.exc_info())
|
traceback.print_exc(*sys.exc_info())
|
||||||
|
|||||||
@@ -77,6 +77,12 @@ class LinkValidator:
|
|||||||
""")
|
""")
|
||||||
self.page.on("load", self._on_page_loaded)
|
self.page.on("load", self._on_page_loaded)
|
||||||
self.page.goto(self.link, timeout=PAGE_TIMEOUT)
|
self.page.goto(self.link, timeout=PAGE_TIMEOUT)
|
||||||
|
captcha_url = "geo.captcha-delivery.com/captcha"
|
||||||
|
if captcha_url in self.page.content():
|
||||||
|
self.logger.info("will close browser")
|
||||||
|
self.browser.close()
|
||||||
|
return None
|
||||||
|
else:
|
||||||
return self.page.content()
|
return self.page.content()
|
||||||
except Exception as error:
|
except Exception as error:
|
||||||
params.oracle_log_sender.send_error(str(error))
|
params.oracle_log_sender.send_error(str(error))
|
||||||
|
|||||||
Reference in New Issue
Block a user