From 677db7399ee7e7a93a022fe06f83a5db8c443c98 Mon Sep 17 00:00:00 2001 From: PAN Lei Date: Fri, 17 May 2024 21:49:53 +0200 Subject: [PATCH] add method to check names --- src/person_name/contact_manager.py | 77 ++++++++++++++++++++++-------- 1 file changed, 58 insertions(+), 19 deletions(-) diff --git a/src/person_name/contact_manager.py b/src/person_name/contact_manager.py index dbe7548..237ce68 100755 --- a/src/person_name/contact_manager.py +++ b/src/person_name/contact_manager.py @@ -4,22 +4,56 @@ import random import xlsxwriter from src.db.mongo_manager import MONGO_STORE_MANAGER +from src.person_name.cython_extract_methods import filter_already_validated_contacts, read_pinyin_list_from_file +from src.pojo.contact_pojo import ContactPojo +from src.utils.contacts.generate_random_passport_id import get_random_passport_id_number from src.utils.excel_reader import read_contacts, fr_phone_number_prefix, get_random_fr_phone_numbers, ExcelHelper def upload_contacts_list(): - _contacts_to_book = read_contacts("/Users/lpan/Desktop/contact_list_2024-04-18.xlsx") + _contacts_to_book = read_contacts("/Users/lpan/Desktop/contact_list_2024-05-16.xlsx") return _contacts_to_book def fix_phone_number_format(file_path): _contact_list = read_contacts(file_path) for _contact in _contact_list: + if _contact.first_name is None or len(_contact.first_name) == 0: + print(_contact) + # _contact.last_name.replace("\xa0", " ") + original_last_name = _contact.last_name + _contact.last_name = original_last_name.replace("\xa0", " ").split(" ")[0] + _contact.first_name = original_last_name.replace("\xa0", " ").split(" ")[1] + print(_contact) if _contact.phone.startswith('7'): if _contact.phone[0:2] not in fr_phone_number_prefix: print(_contact) _contact.phone = get_random_fr_phone_numbers() - write_new_contacts_to_excel(_contact_list, file_name="22_04_to_test") + write_new_contacts_to_excel(_contact_list, file_name="15_05_to_test") + + +def generate_contact_from_mail_list(mail_list_file, + name_list_file_path="all_new_name_list.txt"): + execl_reader = ExcelHelper() + mail_list = execl_reader.read_mails_and_pwd(mail_list_file) + print("mail_list size is {}".format(len(mail_list))) + # print("mail_list size before filter is {}".format(len(mail_list))) + filter_already_validated_contacts(mail_list) + print("mail_list size after filter is {}".format(len(mail_list))) + generate_contacts = [] + pinyin_name_list = read_pinyin_list_from_file(name_list_file_path) + random.shuffle(pinyin_name_list) + print(pinyin_name_list[0]) + for mail in mail_list: + phone_number = get_random_fr_phone_numbers() + passport_number = get_random_passport_id_number() + name = random.choice(pinyin_name_list) + last_name = name.split(" ")[0] + first_name = name.split(" ")[1] + contact = ContactPojo(mail=mail.mail, phone_number=phone_number, passport_number=passport_number, + last_name=last_name, first_name=first_name, store="random") + generate_contacts.append(contact) + write_new_contacts_to_excel(generate_contacts) def write_new_contacts_to_excel(valid_contacts: list, file_name=str(datetime.date.today())): @@ -46,7 +80,7 @@ def write_new_contacts_to_excel(valid_contacts: list, file_name=str(datetime.dat workbook.close() -def generate_valid_contact_list_for_day(sement_number=1): +def generate_valid_contact_list_for_day(segment_number=1): _valid_contact_list = MONGO_STORE_MANAGER.get_all_successful_items_for_day() _all_contacts = MONGO_STORE_MANAGER.get_all_contacts_to_book() _contact_to_save = [] @@ -74,15 +108,10 @@ def generate_valid_contact_list_for_day(sement_number=1): _need_to_save = False if _need_to_save: _contact_to_save.append(_contact) - - # if _contact.mail == "talasapdne@gmx.de": - # print(_contact.__hash__()) - # if _contact not in _contact_to_save: - # _contact_to_save.add(_contact) _contact_to_save_list = _contact_to_save write_new_contacts_to_excel(_contact_to_save_list) - for i in range(0, sement_number): - _step = int(len(_contact_to_save_list) / sement_number) + for i in range(0, segment_number): + _step = int(len(_contact_to_save_list) / segment_number) _sublist = _contact_to_save_list[i * _step:_step * (i + 1)] _file_name = str(datetime.date.today()) + "_" + str(i + 1) write_new_contacts_to_excel(_sublist, file_name=_file_name) @@ -112,14 +141,24 @@ def generate_all_contact_list(): if __name__ == '__main__': # contacts_to_book = upload_contacts_list() # MONGO_STORE_MANAGER.upload_contact_list(contacts_to_book) - generate_valid_contact_list_for_day(sement_number=2) + # print("start at {}".format(datetime.datetime.now())) + 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())) # generate_all_contact_list() # merge_contact_list_files( - # ["/Users/lpan/Desktop/20_04_to_test_1.xlsx", - # "/Users/lpan/Desktop/19_04_to_test.xlsx", - # "/Users/lpan/Desktop/17_18_04_to_test.xlsx", - # "/Users/lpan/Desktop/09_04_to_test.xlsx", - # "/Users/lpan/Desktop/31_03_to_test.xlsx", - # "/Users/lpan/Desktop/12_04_to_test.xlsx", - # "/Users/lpan/Desktop/16_04_to_test.xlsx"]) - # fix_phone_number_format("/Users/lpan/Desktop/22_04_to_test.xlsx") + # ["/Users/lpan/Desktop/contact_list_2024-05-07.xlsx", + # "/Users/lpan/Desktop/contact_list_2024-05-06.xlsx", + # "/Users/lpan/Desktop/contact_list_2024-05-04.xlsx", + # "/Users/lpan/Desktop/contact_list_2024-05-03.xlsx", + # "/Users/lpan/Desktop/contact_list_2024-05-02.xlsx", + # "/Users/lpan/Desktop/contact_list_2024-04-30.xlsx", + # "/Users/lpan/Desktop/contact_list_2024-04-26.xlsx", + # "/Users/lpan/Desktop/contact_list_2024-04-25.xlsx", + # "/Users/lpan/Desktop/contact_list_2024-04-24.xlsx", + # "/Users/lpan/Desktop/contact_list_2024-04-23.xlsx", + # "/Users/lpan/Desktop/contact_list_2024-04-22.xlsx", + # "/Users/lpan/Desktop/contact_list_2024-04-20.xlsx", + # "/Users/lpan/Desktop/contact_list_2024-04-18.xlsx", + # "/Users/lpan/Desktop/contact_list_2024-04-19.xlsx"]) + # fix_phone_number_format("/Users/lpan/Desktop/15_05_to_test.xlsx")