diff --git a/check_results.py b/check_results.py index 742c549..43a5f2c 100644 --- a/check_results.py +++ b/check_results.py @@ -8,6 +8,7 @@ from playwright.sync_api import sync_playwright import params from logs.LogSender import TYPE_EVENT_CHECK_RESULTS, LOG_SUBJECT_EVENT +from notification.AcceptedResultPojo import get_accepted_result_from from notification.mailer import Mailer from pojo.ReserveResultPojo import ReserveResultPojo from pojo.ResultEnum import ResultEnum @@ -101,11 +102,11 @@ class ResultChecker: else: print("status is ACCEPTED") status = ResultEnum.ACCEPTED - # send email - # try: - # mailer.send_email(get_accepted_result_from(reserve_pojo)) - # except Exception as err: - # print(err) + # send email + try: + mailer.send_email(get_accepted_result_from(reserve_pojo)) + except Exception as err: + print(err) collection.document(reserve_pojo.id).update({u'accepted': status.name}) diff --git a/db/local_db_manager.py b/db/local_db_manager.py index 0f3d768..25c075d 100644 --- a/db/local_db_manager.py +++ b/db/local_db_manager.py @@ -24,7 +24,8 @@ class LocalDbManager: metadata = MetaData(db_engine) # Create a table with the appropriate Columns Table(ContactInErrorPojo.__tablename__, metadata, - Column('mail', String, primary_key=True, nullable=False), + Column('id', Integer, primary_key=True, autoincrement=True), + Column('mail', String), Column('phone', String), Column('passport', String), Column('last_name', String), diff --git a/pojo/captcha_error_contact_pojo.py b/pojo/captcha_error_contact_pojo.py index 4afe5ac..e11f5c9 100644 --- a/pojo/captcha_error_contact_pojo.py +++ b/pojo/captcha_error_contact_pojo.py @@ -7,12 +7,13 @@ from pojo.contact_pojo import ContactPojo Base = declarative_base() ERROR_TYPE_CAPTCHA = 1 +TOO_MANY_REQUEST_ERROR = 2 class ContactInErrorPojo(Base): __tablename__ = "contacts_in_error" - - mail: str = Column(String, primary_key=True) + id = Column(Integer, primary_key=True, autoincrement=True) + mail: str = Column(String) phone: str = Column(String) passport: str = Column(String) last_name: str = Column(String) @@ -38,6 +39,6 @@ def get_captcha_error_contact_from_contact(contact: ContactPojo, error_type: int if __name__ == '__main__': - conact = ContactPojo(mail="panleici3m@gmail.com", phone_number="649114592", ccid="", position=0, - passport_number="3322111", first_name="Lei", last_name="PAAaN") - definitions.local_db_manager.insert_or_update(get_captcha_error_contact_from_contact(conact, ERROR_TYPE_CAPTCHA)) + contact = ContactPojo(mail="panleici3m@gmail.com", phone_number="649114592", ccid="", position=0, + passport_number="3322111", first_name="Lei", last_name="PAAaN") + definitions.local_db_manager.insert_or_update(get_captcha_error_contact_from_contact(contact, ERROR_TYPE_CAPTCHA)) diff --git a/workers/commandor_page.py b/workers/commandor_page.py index 8f8d0dd..01294c5 100644 --- a/workers/commandor_page.py +++ b/workers/commandor_page.py @@ -12,7 +12,8 @@ import definitions import params from pojo.ModeEnum import ModeEnum from pojo.ReserveResultPojo import ReserveResultPojo, PublishType -from pojo.captcha_error_contact_pojo import get_captcha_error_contact_from_contact, ERROR_TYPE_CAPTCHA +from pojo.captcha_error_contact_pojo import get_captcha_error_contact_from_contact, ERROR_TYPE_CAPTCHA, \ + TOO_MANY_REQUEST_ERROR from pojo.contact_pojo import ContactPojo from workers.SolveCaptch import SolveCaptcha @@ -250,6 +251,8 @@ class CommandorPage: elif TOO_MANY_REQUEST_ERROR_MESSAGE in erro_content: # this email has been already used if not self.is_finished: + definitions.local_db_manager.insert_or_update( + get_captcha_error_contact_from_contact(self.contact, TOO_MANY_REQUEST_ERROR)) params.oracle_log_sender.send_too_many_error(self.contact) self.is_finished = True self.termine() @@ -306,9 +309,6 @@ class CommandorPage: except Exception as error: self.logger.error(error) - def clear_app_data(self): - pass - def fill_otp(self, otp: str): self.page.focus(OTP_FIELD_ID) time.sleep(get_random_wait_time()) @@ -369,15 +369,12 @@ def on_success(result: ReserveResultPojo): def launch_page(): - PROXY_USERNAME = "panleicim-res-fr-" + params.get_random_id_number_for_proxy() - print("proxy_username is " + PROXY_USERNAME) proxy = { "server": params.BRIGHT_DATA_PROXY_SERVER, "username": params.BRIGHT_DATA_PROXY_USERNAME, "password": params.BRIGHT_DATA_PROXY_PASSWORD } passport_number = get_random_id_number() - print("passport_number is " + passport_number) contact = ContactPojo(phone_number="+33758912245", passport_number=passport_number, last_name="XU", first_name="xingzhen", mail="ColbyPatel653@gmail.com", ccid="", position=0)