From a79fff8262815ad4e04adebe4c7b8d89aa45ffcb Mon Sep 17 00:00:00 2001 From: Lei PAN Date: Mon, 2 Sep 2024 19:27:21 +0200 Subject: [PATCH 1/3] create method go get not used contacts --- src/mail/mail_reader_all_contacts.py | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/src/mail/mail_reader_all_contacts.py b/src/mail/mail_reader_all_contacts.py index 8b931e3..58e565f 100755 --- a/src/mail/mail_reader_all_contacts.py +++ b/src/mail/mail_reader_all_contacts.py @@ -13,6 +13,7 @@ from src.db.mongo_manager import MONGO_STORE_MANAGER from src.logs.AppLogging import init_logger from src.mail.mail_constants import DOMAIN_HOTMAIL, create_imap from src.pojo.mail.mail_pojo import MailPojo +from src.utils import excel_reader from src.utils.timeutiles import is_time_between VALIDATION_URL_SUBJECT_fr = 'Validation de votre demande de rendez-vous' @@ -251,11 +252,12 @@ def need_to_check_email(mail: str, successful_items) -> bool: # return False -def read_all_mails(): +def read_all_mails(contact_to_book_list=None): # check time before start checking emails if is_time_between(time(7, 30), time(19, 30)): # get email address - contact_to_book_list = MONGO_STORE_MANAGER.get_all_contact_to_book_list() + if contact_to_book_list is None: + contact_to_book_list = MONGO_STORE_MANAGER.get_all_contact_to_book_list() mail_list = MONGO_STORE_MANAGER.get_destination_emails() mail_list_to_check = [] for contact in contact_to_book_list: @@ -303,4 +305,7 @@ def read_all_mails(): # check whether the url has already been clicked if __name__ == '__main__': init_logger() - read_all_mails() + contact_to_book_list = excel_reader.read_contacts( + file_name="/Users/panlei/Desktop/contact_list_2024-06-28_4000.xlsx") + read_all_mails(contact_to_book_list=contact_to_book_list) + # read_all_mails() From 0bde05d4f6e1c7847962e5ea1764895e3b0bd64c Mon Sep 17 00:00:00 2001 From: Lei PAN Date: Mon, 2 Sep 2024 19:29:56 +0200 Subject: [PATCH 2/3] restore read_all_mails function --- src/mail/mail_reader_all_contacts.py | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/src/mail/mail_reader_all_contacts.py b/src/mail/mail_reader_all_contacts.py index 1edee6f..0a1d913 100755 --- a/src/mail/mail_reader_all_contacts.py +++ b/src/mail/mail_reader_all_contacts.py @@ -307,7 +307,7 @@ def read_all_mails(contact_to_book_list=None): # check whether the url has already been clicked if __name__ == '__main__': init_logger() - contact_to_book_list = excel_reader.read_contacts( - file_name="/Users/panlei/Desktop/contact_list_2024-06-28_4000.xlsx") - read_all_mails(contact_to_book_list=contact_to_book_list) - # read_all_mails() + # contact_to_book_list = excel_reader.read_contacts( + # file_name="/Users/panlei/Desktop/contact_list_2024-06-28_4000.xlsx") + # read_all_mails(contact_to_book_list=contact_to_book_list) + read_all_mails() From 278b5b6a0e0cb982942adca1da0a3f83df89a280 Mon Sep 17 00:00:00 2001 From: panlei Date: Thu, 3 Oct 2024 23:42:33 +0200 Subject: [PATCH 3/3] support mobile serial --- src/person_name/contact_manager.py | 9 +++++---- src/pojo/contact_pojo.py | 7 ++++++- src/utils/excel_reader.py | 3 +++ 3 files changed, 14 insertions(+), 5 deletions(-) diff --git a/src/person_name/contact_manager.py b/src/person_name/contact_manager.py index 22506ec..31029be 100755 --- a/src/person_name/contact_manager.py +++ b/src/person_name/contact_manager.py @@ -1,8 +1,9 @@ import datetime import random +from pathlib import Path import xlsxwriter -from src.person_name.cython_extract_methods import filter_already_validated_contacts, read_pinyin_list_from_file +# from src.person_name.cython_extract_methods import filter_already_validated_contacts, read_pinyin_list_from_file from src.db.mongo_manager import MONGO_STORE_MANAGER from src.pojo.contact_pojo import ContactPojo @@ -13,7 +14,7 @@ DEFAULT_SERIAL = "47e7e36b" def upload_contacts_list(): - _contacts_to_book = read_contacts("/Users/lpan/Desktop/contact_list_2024-09-28.xlsx") + _contacts_to_book = read_contacts(str(Path.home()) + "/Desktop/contact_list_2024-10-03.xlsx") return _contacts_to_book @@ -203,14 +204,14 @@ if __name__ == '__main__': # contacts_to_book = upload_contacts_list() # MONGO_STORE_MANAGER.upload_contact_list(contacts_to_book) # print("start at {}".format(datetime.datetime.now())) - generate_valid_contact_list_for_day(segment_number=2) + # generate_valid_contact_list_for_day(segment_number=2) # generate_contact_from_mail_list("/Users/lpan/Downloads/邮箱及密码.xlsx") # print("end at {}".format(datetime.datetime.now())) # update_contact_list_not_received_mail() # generate_valid_contact_list_for_day(segment_number=2) # get_old_validated_contact_list() # print("end at {}".format(datetime.datetime.now())) - # generate_all_contact_list() + generate_all_contact_list() # merge_contact_list_files( # ["/Users/lpan/Desktop/contact_list_all_old_not_used_contact.xlsx", # "/Users/lpan/Desktop/contact_list_2024-06-26.xlsx"]) diff --git a/src/pojo/contact_pojo.py b/src/pojo/contact_pojo.py index b66a114..e46a4f6 100644 --- a/src/pojo/contact_pojo.py +++ b/src/pojo/contact_pojo.py @@ -15,6 +15,7 @@ class ContactPojo: ip_address: str isp: str = None ua: str = "" + serial: str = "" def __repr__(self): return "phone:{}, passport:{}, last_name:{}, first_name:{}, mail:{}, store:{}, ip_country:{},isp:{}".format( @@ -45,7 +46,8 @@ class ContactPojo: u'mail': self.mail, u'store': self.store, u'ip_country': self.ip_country, - u'ua': self.ua + u'ua': self.ua, + u'serial': self.serial } return dest @@ -74,5 +76,8 @@ class ContactPojo: result = ContactPojo(phone_number=phone, passport_number=passport, mail=email, last_name=last_name, first_name=first_name, store=store) result.ip_country = ip_country + if source.get('serial'): + serial = source['serial'] + result.serial = serial result.ua = ua return result diff --git a/src/utils/excel_reader.py b/src/utils/excel_reader.py index 9c784e8..b249193 100755 --- a/src/utils/excel_reader.py +++ b/src/utils/excel_reader.py @@ -58,6 +58,9 @@ def read_contacts(file_name) -> list: first_name=first_name, passport_number=contact_dict['passport'], mail=contact_dict['email'], store=store) + if contact_dict.get('serial') is not None: + serial = contact_dict['serial'] + contact.serial = serial contact.ip_country = ip_country contact.ua = ua contact_list.append(contact)