我正在尝试在python中执行脚本,以便从docx中提取文本以放入XML格式。
具体来说,文本分为不同颜色(蓝色和黑色)的段落。
因此,您已经在文档中引入了元数据(时间,标题等),然后输入了以下文本:
Meta-data (date, title) xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx (color black) yyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyy (color blue) xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx (color black) yyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyy (color blue)
,依此类推。
所以我的脚本旨在提取每个段落的段落,并根据颜色(黑色为“ b”,蓝色为“ bl”)为每个段落分配栏位。
它似乎起作用,但是当我打开结果时什么都没有。
您能帮我解决一下吗?
import sys
import os
from docx import Document
from docx.shared import RGBColor
dossierAOuvrir=sys.argv[1]
dossierAOuvrir=dossierAOuvrir+"/"
color="x"
for root, dirs, files in os.walk(dossierAOuvrir) :
for file in files :
docx=os.path.join(root,file)
print("docx : ",docx)
doc=Document(docx)
fichierSortie=str(file)+".xml"
sortie=open(fichierSortie,mode="w",encoding="utf-8")
for p in doc.paragraphs:
for run in p.runs :
color="\t<i c=\""+str(run.font.color.rgb)+"\">"
sortie.write(color)
sortie.write(str(p.text))
sortie.write("</i>\n")
sortie.close()
print(str(file)," traité")
xml文件的结果:
:~/Documents/word$ python3 iwDocxToXML.py Kangourou
docx : Kangourou/KANGOUROU_IW08.docx
KANGOUROU_IW08.docx traité
docx : Kangourou/KANGOUROU_IW05.docx
KANGOUROU_IW05.docx traité
docx : Kangourou/KANGOUROU_IW03.docx
KANGOUROU_IW03.docx traité
docx : Kangourou/KANGOUROU_IW04.docx
KANGOUROU_IW04.docx traité
docx : Kangourou/KANGOUROU_IW06.docx
KANGOUROU_IW06.docx traité
docx : Kangourou/KANGOUROU_IW09.docx
KANGOUROU_IW09.docx traité
docx : Kangourou/KANGOUROU_IW07.docx
KANGOUROU_IW07.docx traité
在xml文件中
Erreur d’analyse XML : données incompréhensibles après l’élément de
document
Emplacement : file:///home/k/Documents/Exp%C3%A9rimentation
/KANGOUROU_IW03.docx.xml
Numéro de ligne 2, Colonne 2 : <i c="None">tache : ALMONA</i>
--------^^
fICHIER DOCX
Date : Durée : 00:53:50
tÂCHE : aLMONA
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
YYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYY
YYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYY
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
YYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYY
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
YYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYY
段落之间总是有一个空行。