add method to check names
This commit is contained in:
@@ -4,22 +4,56 @@ import random
|
|||||||
import xlsxwriter
|
import xlsxwriter
|
||||||
|
|
||||||
from src.db.mongo_manager import MONGO_STORE_MANAGER
|
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
|
from src.utils.excel_reader import read_contacts, fr_phone_number_prefix, get_random_fr_phone_numbers, ExcelHelper
|
||||||
|
|
||||||
|
|
||||||
def upload_contacts_list():
|
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
|
return _contacts_to_book
|
||||||
|
|
||||||
|
|
||||||
def fix_phone_number_format(file_path):
|
def fix_phone_number_format(file_path):
|
||||||
_contact_list = read_contacts(file_path)
|
_contact_list = read_contacts(file_path)
|
||||||
for _contact in _contact_list:
|
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.startswith('7'):
|
||||||
if _contact.phone[0:2] not in fr_phone_number_prefix:
|
if _contact.phone[0:2] not in fr_phone_number_prefix:
|
||||||
print(_contact)
|
print(_contact)
|
||||||
_contact.phone = get_random_fr_phone_numbers()
|
_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())):
|
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()
|
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()
|
_valid_contact_list = MONGO_STORE_MANAGER.get_all_successful_items_for_day()
|
||||||
_all_contacts = MONGO_STORE_MANAGER.get_all_contacts_to_book()
|
_all_contacts = MONGO_STORE_MANAGER.get_all_contacts_to_book()
|
||||||
_contact_to_save = []
|
_contact_to_save = []
|
||||||
@@ -74,15 +108,10 @@ def generate_valid_contact_list_for_day(sement_number=1):
|
|||||||
_need_to_save = False
|
_need_to_save = False
|
||||||
if _need_to_save:
|
if _need_to_save:
|
||||||
_contact_to_save.append(_contact)
|
_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
|
_contact_to_save_list = _contact_to_save
|
||||||
write_new_contacts_to_excel(_contact_to_save_list)
|
write_new_contacts_to_excel(_contact_to_save_list)
|
||||||
for i in range(0, sement_number):
|
for i in range(0, segment_number):
|
||||||
_step = int(len(_contact_to_save_list) / sement_number)
|
_step = int(len(_contact_to_save_list) / segment_number)
|
||||||
_sublist = _contact_to_save_list[i * _step:_step * (i + 1)]
|
_sublist = _contact_to_save_list[i * _step:_step * (i + 1)]
|
||||||
_file_name = str(datetime.date.today()) + "_" + str(i + 1)
|
_file_name = str(datetime.date.today()) + "_" + str(i + 1)
|
||||||
write_new_contacts_to_excel(_sublist, file_name=_file_name)
|
write_new_contacts_to_excel(_sublist, file_name=_file_name)
|
||||||
@@ -112,14 +141,24 @@ def generate_all_contact_list():
|
|||||||
if __name__ == '__main__':
|
if __name__ == '__main__':
|
||||||
# contacts_to_book = upload_contacts_list()
|
# contacts_to_book = upload_contacts_list()
|
||||||
# MONGO_STORE_MANAGER.upload_contact_list(contacts_to_book)
|
# 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()
|
# generate_all_contact_list()
|
||||||
# merge_contact_list_files(
|
# merge_contact_list_files(
|
||||||
# ["/Users/lpan/Desktop/20_04_to_test_1.xlsx",
|
# ["/Users/lpan/Desktop/contact_list_2024-05-07.xlsx",
|
||||||
# "/Users/lpan/Desktop/19_04_to_test.xlsx",
|
# "/Users/lpan/Desktop/contact_list_2024-05-06.xlsx",
|
||||||
# "/Users/lpan/Desktop/17_18_04_to_test.xlsx",
|
# "/Users/lpan/Desktop/contact_list_2024-05-04.xlsx",
|
||||||
# "/Users/lpan/Desktop/09_04_to_test.xlsx",
|
# "/Users/lpan/Desktop/contact_list_2024-05-03.xlsx",
|
||||||
# "/Users/lpan/Desktop/31_03_to_test.xlsx",
|
# "/Users/lpan/Desktop/contact_list_2024-05-02.xlsx",
|
||||||
# "/Users/lpan/Desktop/12_04_to_test.xlsx",
|
# "/Users/lpan/Desktop/contact_list_2024-04-30.xlsx",
|
||||||
# "/Users/lpan/Desktop/16_04_to_test.xlsx"])
|
# "/Users/lpan/Desktop/contact_list_2024-04-26.xlsx",
|
||||||
# fix_phone_number_format("/Users/lpan/Desktop/22_04_to_test.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")
|
||||||
|
|||||||
Reference in New Issue
Block a user