45 lines
1.4 KiB
Python
45 lines
1.4 KiB
Python
import logging
|
|
import sys
|
|
from concurrent.futures import ThreadPoolExecutor
|
|
|
|
import params
|
|
from logs.AppLogging import init_logger
|
|
from utils.excel_reader import ExcelHelper
|
|
from workers.commandor_page import CommandorPage
|
|
|
|
# used to save the current slot position
|
|
|
|
init_logger()
|
|
logger = logging.getLogger()
|
|
logger.addHandler(logging.StreamHandler(stream=sys.stdout))
|
|
|
|
|
|
def start_book(start_number, end_number, store=0):
|
|
# read the contact, and contact the 2 objects together
|
|
excel_reader = ExcelHelper()
|
|
contacts = excel_reader.read_contacts()[start_number - 1: end_number]
|
|
print(contacts)
|
|
with ThreadPoolExecutor(max_workers=1) as executor:
|
|
for contact in contacts:
|
|
proxy = get_proxy(contact.phone)
|
|
commandor = CommandorPage(contact, store_type=store)
|
|
# start the task in thread
|
|
executor.submit(commandor.start_page, proxy)
|
|
|
|
|
|
def get_proxy(phone_number):
|
|
random_id_number = str(phone_number)[1:len(str(phone_number))]
|
|
proxy_username = "panleicim-res-fr-" + random_id_number
|
|
logger.info("proxy_username is " + proxy_username)
|
|
proxy = {
|
|
"server": params.PROXY_SERVER,
|
|
"username": proxy_username,
|
|
"password": params.PROXY_PASSWORD
|
|
}
|
|
return proxy
|
|
|
|
|
|
if __name__ == '__main__':
|
|
# 修改联系人行,结束联系人行 第三个参数store等于0的时候是随机,传入1的时候是总店
|
|
start_book(1, 1, store=0)
|