Merge branch 'master' of bitbucket.org:panleicim/appointment_tool

This commit is contained in:
2023-11-08 17:37:07 +01:00
17 changed files with 295 additions and 67 deletions
+3 -4
View File
@@ -1,11 +1,10 @@
from src.db.mongo_manager import MONGO_STORE_MANAGER
from src.utils.excel_reader import ExcelHelper
from src.utils.excel_reader import read_contacts
def upload_contacts_list():
excel_helper = ExcelHelper()
contacts_to_book = excel_helper.read_contacts("/Users/lpan/Desktop/yahoo_aol.xlsx")
return contacts_to_book
_contacts_to_book = read_contacts("/Users/panlei/Desktop/yahoo_aol_valid_25.xlsx")
return _contacts_to_book
# 把新的联系人存到网上
+1 -4
View File
@@ -8,7 +8,7 @@ from src.db.mongo_manager import MongoDbManager
from src.pojo.contact_pojo import ContactPojo
from src.utils import excel_reader
from src.utils.excel_reader import get_random_fr_phone_numbers, ExcelHelper
from src.utils.generate_random_passport_id import get_random_passport_id_number
from src.utils.contacts.generate_random_passport_id import get_random_passport_id_number
def get_ordered_combins(stuff):
@@ -150,10 +150,7 @@ def generate_name_from_email(mail_address, pinyin_name_list):
# found_name = check_name(word_to_test=word_to_test, pinyin_name_list=pinyin_name_list)
# if found_name is not None:
# return found_name
# if len(word_to_test) >= 7:
# if len(word_to_test) >= 6:
if len(word_to_test) >= 5:
# if len(word_to_test) >= 4:
found_name = check_name(word_to_test=word_to_test, pinyin_name_list=pinyin_name_list)
if found_name is not None:
return found_name
@@ -2,8 +2,10 @@ import random
import xlsxwriter
from src.db.mongo_manager import MONGO_STORE_MANAGER
from src.person_name.extract_name_with_pinyinlist import read_pinyin_list_from_file
from src.pojo.mail_creation_pojo import MailCreationPojo
from src.utils.excel_reader import get_random_fr_phone_numbers
from src.utils.password_generator import generate_password
@@ -12,7 +14,7 @@ def write_mail_creation_pojo_to_excel(valid_contacts: list):
col = 0
# Create a workbook and add a worksheet.
workbook = xlsxwriter.Workbook('mail_contacts_{}.xlsx'.format(len(valid_contacts)))
header_data = ['name', 'password']
header_data = ['name', '邮箱地址', "password", "恢复邮箱", "恢复邮箱密码"]
worksheet = workbook.add_worksheet()
header_format = workbook.add_format({'bold': True})
@@ -21,19 +23,42 @@ def write_mail_creation_pojo_to_excel(valid_contacts: list):
row = row + 1
for info in valid_contacts:
worksheet.write(row, col, "{}".format(info.name))
worksheet.write(row, col + 1, info.password)
worksheet.write(row, col + 1, info.mail_address)
worksheet.write(row, col + 2, info.password)
worksheet.write(row, col + 3, info.recover_mail)
worksheet.write(row, col + 4, info.recover_mail_pwd)
row += 1
workbook.close()
def get_recover_mail_list(mail_size: int):
_mail_list = MONGO_STORE_MANAGER.get_destination_emails()
random.shuffle(_mail_list)
return _mail_list[0:mail_size]
def generate_mail_address(name):
_name_splitted = name.split(" ")
_first_name = _name_splitted[1]
_last_name = _name_splitted[0]
_year = random.randint(1990, 2000)
return "{}.{}{}".format(_last_name, _first_name, _year)
if __name__ == '__main__':
pinyin_name_list = read_pinyin_list_from_file()
random.shuffle(pinyin_name_list)
_name_list = pinyin_name_list[0:100]
_size = 500
_name_list = pinyin_name_list[0:_size]
# write to excel
_recovery_mail_list = get_recover_mail_list(_size)
_generated_list = []
for _name in _name_list:
name_mail_list = list(zip(_name_list, _recovery_mail_list))
for _name in name_mail_list:
_password = generate_password()
_c = MailCreationPojo(_name, _password)
_phone = get_random_fr_phone_numbers()
_mail = generate_mail_address(_name[0])
_c = MailCreationPojo(_name[0], _password, _mail, _name[1].mail, _name[1].password)
_generated_list.append(_c)
write_mail_creation_pojo_to_excel(_generated_list)