Red de conocimiento informático - Problemas con los teléfonos móviles - Procesamiento de documentos de Word en Python Parte 1: python-docx

Procesamiento de documentos de Word en Python Parte 1: python-docx

Un día recibí una solicitud: espero usar Python para realizar algún procesamiento en documentos de Word, como reemplazar parte del texto y agregar comentarios.

Después de una búsqueda simple, descubrí que python-docx es una biblioteca de Python de uso común para procesar documentos docx, por lo que planeo usarla para un mayor desarrollo.

La documentación oficial proporciona un ejemplo sencillo

python-docx abstrae documentos en objetos de documento, objetos de párrafo y objetos de ejecución, y proporciona API para un procesamiento sencillo en torno a estos objetos

p>

Sin embargo, no hay ninguna parte sobre las operaciones de comentarios en el documento. Después de buscar en algunos artículos, encontré que en un problema se mencionaba información sobre cómo agregar comentarios, pero aún no obtuve una solución específica.

La capa inferior del documento docx está compuesta por archivos XML

Podemos cambiar el nombre del sufijo de un archivo xx.docx a .rar y luego descomprimirlo manualmente para obtener los siguientes archivos

Entre muchos archivos, el archivo document.xml se utiliza principalmente y el contenido del documento se guarda aquí

Abra un archivo document.xml, dejando de lado el encabezado, pie de página, tabla y otros elementos especiales sin elementos de modificación como estilos, un documento docx simple se puede dividir en tres partes: párrafo, ejecución, texto

Un párrafo es un párrafo, que es lo que vemos en Word. El texto es texto, que es el contenido real. Run es relativamente abstracto y podemos entenderlo como un fragmento, es decir, una segmentación de declaraciones.

Para comprender mejor qué es ejecutar, abra un documento de Word y localice una de sus oraciones.

Veamos la parte correspondiente del archivo document.xml después de descomprimir este documento.

OK, podemos ver que la oración completa original se ha dividido en muchas etiquetas lt;w:rgt; en Word. Hay muchas reglas para la segmentación de palabras, algunas según la puntuación. Marcas y algunas basadas en la segmentación de palabras chinas. Si hay diferentes estilos de palabras en la oración, se segmentarán por separado, por lo que es difícil para nosotros predecir en cuántos fragmentos se dividirá una oración.

Busque la palabra clave comentario en el problema y descubra que se ha proporcionado una solución para agregar comentarios en una solicitud de combinación. Puede agregar comentarios a un párrafo a través del método add_comment en el objeto de párrafo

.

Pero esto todavía no satisface mis necesidades. Mi objetivo es agregar con precisión una determinada palabra o frase

Abrir el código fuente de este colaborador para investigar

De hecho, está dentro de la etiqueta P Insertar referencia de etiqueta de comentario y agregar etiqueta de comentario al archivo xx al mismo tiempo

De manera similar, podemos insertar una referencia de etiqueta de comentario en la etiqueta r y agregar etiqueta de comentario al archivo xx al mismo tiempo. al mismo tiempo, para que podamos agregar comentarios a palabras específicas. Necesario

.