added source_from field to contactPojo
This commit is contained in:
@@ -18,7 +18,7 @@ DEFAULT_SERIAL_TO_IGNORE = ["47e7e36b", "bitbrowser"]
|
|||||||
|
|
||||||
|
|
||||||
def upload_contacts_list():
|
def upload_contacts_list():
|
||||||
_contacts_to_book = read_contacts(str(Path.home()) + "/Desktop/extracted_aol_contacts_292_24_03_mac.xlsx")
|
_contacts_to_book = read_contacts(str(Path.home()) + "/Desktop/extracted_yahoo_contacts_129_24_03_win.xlsx")
|
||||||
return _contacts_to_book
|
return _contacts_to_book
|
||||||
|
|
||||||
|
|
||||||
@@ -76,7 +76,7 @@ def write_new_contacts_to_excel(valid_contacts: list, file_name=str(datetime.dat
|
|||||||
# Create a workbook and add a worksheet.
|
# Create a workbook and add a worksheet.
|
||||||
workbook = xlsxwriter.Workbook('contact_list_{}.xlsx'.format(file_name))
|
workbook = xlsxwriter.Workbook('contact_list_{}.xlsx'.format(file_name))
|
||||||
header_data = ['name', 'phone', 'passport', 'email', 'store', 'serial', 'ip_country', 'ua',
|
header_data = ['name', 'phone', 'passport', 'email', 'store', 'serial', 'ip_country', 'ua',
|
||||||
'resident_card_number']
|
'resident_card_number', 'source_from']
|
||||||
worksheet = workbook.add_worksheet()
|
worksheet = workbook.add_worksheet()
|
||||||
header_format = workbook.add_format({'bold': True})
|
header_format = workbook.add_format({'bold': True})
|
||||||
|
|
||||||
@@ -94,12 +94,13 @@ def write_new_contacts_to_excel(valid_contacts: list, file_name=str(datetime.dat
|
|||||||
worksheet.write(row, col + 6, info.ip_country)
|
worksheet.write(row, col + 6, info.ip_country)
|
||||||
worksheet.write(row, col + 7, info.ua)
|
worksheet.write(row, col + 7, info.ua)
|
||||||
worksheet.write(row, col + 8, info.resident_card_number)
|
worksheet.write(row, col + 8, info.resident_card_number)
|
||||||
|
worksheet.write(row, col + 9, info.source_from)
|
||||||
row += 1
|
row += 1
|
||||||
workbook.close()
|
workbook.close()
|
||||||
|
|
||||||
|
|
||||||
def generate_valid_contact_list_for_day(segment_number=1):
|
def generate_valid_contact_list_for_day(segment_number=1):
|
||||||
_collection_name = "2025-03-14"
|
_collection_name = "2025-03-27"
|
||||||
_valid_contact_list = MONGO_STORE_MANAGER.get_all_successful_items_for_one_day(_collection_name)
|
_valid_contact_list = MONGO_STORE_MANAGER.get_all_successful_items_for_one_day(_collection_name)
|
||||||
_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 = []
|
||||||
@@ -148,11 +149,20 @@ def generate_valid_contact_list_for_day(segment_number=1):
|
|||||||
|
|
||||||
|
|
||||||
def write_list_with_segment_number(file_name, _contact_to_save_list, segment_number):
|
def write_list_with_segment_number(file_name, _contact_to_save_list, segment_number):
|
||||||
for i in range(0, segment_number):
|
_mac_list = []
|
||||||
_step = int(len(_contact_to_save_list) / segment_number)
|
_win_list = []
|
||||||
_sublist = _contact_to_save_list[i * _step:_step * (i + 1)]
|
for _contact in _contact_to_save_list:
|
||||||
_file_name = file_name + "_" + str(i + 1)
|
if _contact.source_from == "rdv" or _contact.source_from == "lpan":
|
||||||
write_new_contacts_to_excel(_sublist, file_name=_file_name)
|
_mac_list.append(_contact)
|
||||||
|
else:
|
||||||
|
_win_list.append(_contact)
|
||||||
|
write_new_contacts_to_excel(_mac_list, file_name=file_name + "_mac")
|
||||||
|
write_new_contacts_to_excel(_win_list, file_name=file_name + "_win")
|
||||||
|
# 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 = file_name + "_" + str(i + 1)
|
||||||
|
# write_new_contacts_to_excel(_sublist, file_name=_file_name)
|
||||||
|
|
||||||
|
|
||||||
def merge_contact_list_files(file_list: list, final_file_name="merged_contact_list"):
|
def merge_contact_list_files(file_list: list, final_file_name="merged_contact_list"):
|
||||||
@@ -253,7 +263,7 @@ 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)
|
||||||
# print("start at {}".format(datetime.datetime.now()))
|
# 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/邮箱及密码_23_03_25_yahoo.xlsx")
|
# generate_contact_from_mail_list("/Users/lpan/Downloads/邮箱及密码_23_03_25_yahoo.xlsx")
|
||||||
# print("end at {}".format(datetime.datetime.now()))
|
# print("end at {}".format(datetime.datetime.now()))
|
||||||
# update_contact_list_not_received_mail()
|
# update_contact_list_not_received_mail()
|
||||||
@@ -266,4 +276,4 @@ if __name__ == '__main__':
|
|||||||
# "/Users/lpan/Desktop/contact_list_2024-11-08.xlsx",
|
# "/Users/lpan/Desktop/contact_list_2024-11-08.xlsx",
|
||||||
# "/Users/lpan/Desktop/contact_list_2024-11-06.xlsx"
|
# "/Users/lpan/Desktop/contact_list_2024-11-06.xlsx"
|
||||||
# ])
|
# ])
|
||||||
fix_phone_number_format(str(Path.home()) + "/Desktop/real_name_contacts_500_27_03_25.xlsx")
|
# fix_phone_number_format(str(Path.home()) + "/Desktop/real_name_contacts_292_win.xlsx")
|
||||||
|
|||||||
@@ -37,6 +37,7 @@ class ContactPojo:
|
|||||||
self.current_ip = ""
|
self.current_ip = ""
|
||||||
self.ua = ""
|
self.ua = ""
|
||||||
self.serial = ""
|
self.serial = ""
|
||||||
|
self.source_from = ""
|
||||||
|
|
||||||
def __hash__(self):
|
def __hash__(self):
|
||||||
return hash(self.mail)
|
return hash(self.mail)
|
||||||
@@ -53,7 +54,8 @@ class ContactPojo:
|
|||||||
u'ip_country': self.ip_country,
|
u'ip_country': self.ip_country,
|
||||||
u'current_ip': self.current_ip,
|
u'current_ip': self.current_ip,
|
||||||
u'ua': self.ua,
|
u'ua': self.ua,
|
||||||
u'serial': self.serial
|
u'serial': self.serial,
|
||||||
|
u'source_from': self.source_from
|
||||||
}
|
}
|
||||||
return dest
|
return dest
|
||||||
|
|
||||||
@@ -90,6 +92,7 @@ class ContactPojo:
|
|||||||
if source.get('source_from'):
|
if source.get('source_from'):
|
||||||
model = source['source_from']
|
model = source['source_from']
|
||||||
result.model = model
|
result.model = model
|
||||||
|
result.source_from = model
|
||||||
if source.get('resident_card_number'):
|
if source.get('resident_card_number'):
|
||||||
resident_card_number = source['resident_card_number']
|
resident_card_number = source['resident_card_number']
|
||||||
result.resident_card_number = resident_card_number
|
result.resident_card_number = resident_card_number
|
||||||
|
|||||||
@@ -4,12 +4,10 @@ import string
|
|||||||
|
|
||||||
import pandas as pandas
|
import pandas as pandas
|
||||||
import validators as validators
|
import validators as validators
|
||||||
import xlsxwriter
|
|
||||||
|
|
||||||
from src.db.mongo_manager import MONGO_STORE_MANAGER
|
from src.db.mongo_manager import MONGO_STORE_MANAGER
|
||||||
from src.pojo.contact_pojo import ContactPojo
|
from src.pojo.contact_pojo import ContactPojo
|
||||||
from src.pojo.mail.mail_pojo import MailAddress
|
from src.pojo.mail.mail_pojo import MailAddress
|
||||||
from src.utils.contacts.generate_random_passport_id import get_random_passport_id_number
|
|
||||||
|
|
||||||
fr_phone_number_prefix = ['75',
|
fr_phone_number_prefix = ['75',
|
||||||
'76',
|
'76',
|
||||||
@@ -61,12 +59,17 @@ def read_contacts(file_name) -> list:
|
|||||||
|
|
||||||
if contact_dict.get('ua') is not None:
|
if contact_dict.get('ua') is not None:
|
||||||
ua = contact_dict['ua']
|
ua = contact_dict['ua']
|
||||||
|
source_from = ""
|
||||||
|
|
||||||
|
if contact_dict.get('source_from') is not None:
|
||||||
|
source_from = contact_dict['source_from']
|
||||||
|
|
||||||
contact = ContactPojo(phone_number=contact_dict['phone'],
|
contact = ContactPojo(phone_number=contact_dict['phone'],
|
||||||
last_name=last_name,
|
last_name=last_name,
|
||||||
first_name=first_name,
|
first_name=first_name,
|
||||||
passport=contact_dict['passport'],
|
passport=contact_dict['passport'],
|
||||||
mail=contact_dict['email'], store=store)
|
mail=contact_dict['email'], store=store)
|
||||||
|
contact.source_from = source_from
|
||||||
if contact_dict.get('serial') is not None:
|
if contact_dict.get('serial') is not None:
|
||||||
serial = contact_dict['serial']
|
serial = contact_dict['serial']
|
||||||
contact.serial = serial
|
contact.serial = serial
|
||||||
|
|||||||
Reference in New Issue
Block a user