can retry the contacts in error
This commit is contained in:
+13
-17
@@ -127,9 +127,9 @@ class CommandorPage:
|
||||
self.logger.info("填充信息: " + str(self.contact.phone))
|
||||
self._set_name(self.contact.last_name, self.contact.first_name)
|
||||
self._setPhoneCountryAndStore()
|
||||
self._setPhoneNumber("0" + str(self.contact.phone))
|
||||
self._set_phone_number("0" + str(self.contact.phone))
|
||||
self._set_email(self.contact.mail)
|
||||
self.setIdNumber(self.contact.passport)
|
||||
self._set_id_number(self.contact.passport)
|
||||
self._checkCgu()
|
||||
if self.appointment_mode == ModeEnum.AUTOMATIC:
|
||||
self.resolve_captcha()
|
||||
@@ -205,7 +205,7 @@ class CommandorPage:
|
||||
except Exception as error:
|
||||
self.logger.error(error)
|
||||
|
||||
def _setPhoneNumber(self, phoneNumber):
|
||||
def _set_phone_number(self, phoneNumber):
|
||||
time.sleep(get_random_wait_time())
|
||||
try:
|
||||
self.page.evaluate("""(phoneNumber)=>document.getElementById("phone_number").value =phoneNumber""",
|
||||
@@ -264,9 +264,7 @@ class CommandorPage:
|
||||
self.is_captcha_in_error = True
|
||||
if not self.is_finished:
|
||||
# save the error to database with contact info
|
||||
params.local_db_manager.insert_or_update(
|
||||
get_captcha_error_contact_from_contact(self.contact, ERROR_TYPE_CAPTCHA))
|
||||
params.oracle_log_sender.send_captcha_error(self.contact)
|
||||
self.handle_captcha_error()
|
||||
self.is_finished = True
|
||||
# no need to retry captcha, if retry ,will generate DOUBLE_REQUEST_ERROR_MESSAGE
|
||||
self.termine()
|
||||
@@ -283,7 +281,7 @@ class CommandorPage:
|
||||
except Exception as error:
|
||||
self.logger.error(error)
|
||||
|
||||
def setIdNumber(self, id):
|
||||
def _set_id_number(self, id):
|
||||
time.sleep(get_random_wait_time())
|
||||
try:
|
||||
self.page.evaluate(""" (id) =>{
|
||||
@@ -332,6 +330,7 @@ class CommandorPage:
|
||||
result.store_type = self.store_type
|
||||
params.firebase_store_manager.save(result)
|
||||
params.local_db_manager.handle_success(result)
|
||||
params.mongo_store_manager.delete_captcha_error_contact_for_current_day(self.contact)
|
||||
if status is PublishType.SUCCESS:
|
||||
self.on_success(result)
|
||||
time.sleep(2)
|
||||
@@ -360,13 +359,11 @@ class CommandorPage:
|
||||
self.logger.error(error)
|
||||
self.page.reload(timeout=PAGE_TIMEOUT)
|
||||
|
||||
|
||||
def get_random_id_number() -> str:
|
||||
S = 8 # number of characters in the string.
|
||||
ran = ''.join(random.choices(string.digits, k=S))
|
||||
id_number = "57" + str(ran)
|
||||
print("The randomly generated string is : 94" + str(ran)) # print the random data
|
||||
return id_number
|
||||
def handle_captcha_error(self):
|
||||
params.local_db_manager.insert_or_update(
|
||||
get_captcha_error_contact_from_contact(self.contact, ERROR_TYPE_CAPTCHA))
|
||||
params.mongo_store_manager.insert_captcha_error_contact(self.contact)
|
||||
params.oracle_log_sender.send_captcha_error(self.contact)
|
||||
|
||||
|
||||
def on_success(result: ReserveResultPojo):
|
||||
@@ -374,12 +371,11 @@ def on_success(result: ReserveResultPojo):
|
||||
|
||||
|
||||
def launch_page():
|
||||
passport_number = get_random_id_number()
|
||||
contact = ContactPojo(phone_number="+33758912245", passport_number=passport_number, last_name="XU",
|
||||
contact = ContactPojo(phone_number="+33758912245", passport_number="82546975", last_name="XU",
|
||||
first_name="xingzhen",
|
||||
mail="ColbyPatel653@gmail.com", ccid="", position=0)
|
||||
page = CommandorPage(contact, store_type=1)
|
||||
return page.start_page(params.get_proxy())
|
||||
return page.start_page(params.get_proxy(ProxyType.BRIGHT_DATA))
|
||||
|
||||
|
||||
def wait_for_otp(event: threading.Event, commandor: CommandorPage):
|
||||
|
||||
Reference in New Issue
Block a user