generate recovery email with contacts
This commit is contained in:
@@ -2,6 +2,7 @@ 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
|
||||
@@ -13,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})
|
||||
|
||||
@@ -22,21 +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 + 2, info.phone)
|
||||
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()
|
||||
_phone = get_random_fr_phone_numbers()
|
||||
_c = MailCreationPojo(_name, _password, _phone)
|
||||
_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)
|
||||
|
||||
Reference in New Issue
Block a user