Исправлено форматирование таблицы из преобразования .do c в .txt - PullRequest
0 голосов
/ 13 февраля 2020

Я конвертирую .do c файл в текстовый файл. Моя единственная проблема в том, что файл .do c содержит таблицы. В текстовом файле эти таблицы не записываются построчно. Вместо этого они записываются ячейка за ячейкой.

Например:

enter image description here

Эта таблица должна быть в текстовом файле, например так:

Термины и определения

У собаки 4 ноги

Кошка любит много спать

Медведь любит мед.

Но вместо этого это так:

Термины и определения

Собака

Имеет 4 ноги

Кошка

Любит спать много

Медведь

Любит мед.

Это происходит в каждой таблице, которая находится в моем файле .do c.

У меня есть такой код:

def doc_to_txt(path_of_file,name_of_file):
    try :
        app = win32com.client.Dispatch('Word.Application')
        app.Visible = True
        for subdir, dirs, files in os.walk(path_of_file) :
            for file in files :
                fullpath = os.path.join(*[subdir, file])
                if file== name_of_file :
                        out_name = file.replace("doc", r"txt")
                        in_file = os.path.abspath(path_of_file + "\\" + file)
                        out_file = os.path.abspath(path_of_file + "\\" + out_name)
                        doc = app.Documents.Open(in_file)
                        content = doc.Content.Text
                        print('Converting '+name_of_file+' into txt file for parsing... ' )
                        #print('Exporting', out_file)
                        doc.SaveAs(out_file, FileFormat=7)
                        doc.Close()
                        return out_file
    except Exception as e :
        print(e)
    finally :
        app.Quit()
...