Компиляция мультипроцессового кода python в exe
Благодарю за внимание. Столкнулся с проблемой в компиляции мультипроцессового кода python в .exe . Проблема состоит в том, что написанный код через IDE(pycharm) отрабатывает правильно и без ошибок, но после компиляции через auto-py-to-exe он работает странно. по моим предположениям доходит до исполнения функции в мультипроцессе и перезапускается. Кто-то сталкивался? Кто-то знает или догадывается в чем может быть проблема и как это решить? За любую помощь буду признателен. Основная часть кода:
if __name__ == '__main__':
try:
num_proc = int(input('Введите количество одновременных процессов(числом) : '))
except ValueError:
print('Для количества процессов нужно число. К примеру - 10')
try:
iteration = int(input('Введите количество повторений(числом) : '))
except ValueError:
print('Для количества повторений нужно число. К примеру - 10')
try:
time_sleep = input('Введите паузу между повторениями(в секундах) : ')
except ValueError:
print('Для паузы нужно число. К примеру - 300')
try:
time_sleep = input('Введите паузу между повторениями(в секундах) : ')
except ValueError:
print('Для паузы нужно число. К примеру - 300! Включенна пауза на 1500 секунд')
time.sleep(1500)
time_sleep = int(time_sleep)
iteration = int(iteration)
num_proc = int(num_proc)
if 'log' in os.listdir():
create_folder_log()
for iter in range(iteration):
type_read_file = 'w'
procs = []
num = 0
for account in account_data_txt:
proc = Process(target=gmail_helper, args=(type_read_file, account, proxy_data_txt[num],))
num = num + 1
if num >= int(num_proc):
num = 0
procs.append(proc)
proc.start()
time.sleep(35)
temp = procs[-1]
m_temp = procs.index(temp)
if m_temp % num_proc == 0:
for proc in procs:
proc.join()
cleaning()
print('Цикл окончен. Пауза: ' + str(time_sleep) + 'секунд' + '\n')
time.sleep(int(time_sleep))
Работа скомпилированного файла:
