Работа с командной строкой
в результате парсинга электронных писем возникла загвоздка, мой парсер
# -*- coding: utf-8 -*-
import setuptools
name: str = input ("Введите имя входящего файла: ")
f = open (name, "r") # открываем файл
lines = f.readlines () # читаем его построчно
t1 = lines [6]
t2 = lines [-5]
t3 = lines [-6]
for line in lines:
if line.find ('Информирование') != -1: # то что ищем
t5 = line [0:40] # определяет глубину
print (t5) # выводим на экран проверяем
break
#--------
for line in lines:
if line.find ('НА НР') != -1: # то что ищем
t4 = line [7:40] # определяет глубину
print (t4) # выводим на экран проверяем
break
name1: str = input ("Введите имя исходящего файла: ")
f = open (name1, "w+")
# f.write(str(t1 + "\n" + t2))
f.write ('реквизит верхний// ' + str (t1))
f.write ('реквизит нижний// ' + str (t2))
f.write ('дата// ' + str (t3))
f.write ('\nнанр// ' + str (t4))
f.write ('\n// ' + str (t5))
f.close ()
закрывает окно после выполнения задачи
прошу помочь справиться с следующими задачами
- не закрывать окно командной строки при завершении задачи
- писать успешность выполнения задачи ("Задача выполнена"/"Задача не выполнена")
- После Успешного завершения задачи в командную строку выводить сформированный файл (тут важна динамика), так как выходной файл как видно из кода обзывается мной или оператором как угодно.
Ответы (1 шт):
В работе с Word я не силён, но вроде есть разные библиотеки. Боюсь только нет универсальных библиотек, для каждого формата надо будет искать свой подход. Вот например библиотека для DOCX.
не закрывать окно командной строки при завершении задачи
Элементарно - добавьте input в конце скрипта:
input('Нажмите Ввод для продолжения')
писать успешность выполнения задачи ("Задача выполнена"/"Задача не выполнена")
Каковы критерии успешности? Заведите некий success_flag = True и сбрасывайте его в случае ошибок. В конце проверяйте и пишите соответствующее сообщение (можно написать через простой if, но такая форма записи короче):
print(("Задача выполнена","Задача не выполнена")[1-success_flag])
После Успешного завершения задачи в командную строку выводить сформированный файл
Ну, напечатайте name1 через print. Или вы хотите, чтобы файл автоматически запустился на просмотр? Это можно сделать через subprocess, поищите тут поиском, примеров полно.