Pergunta

É possível ler e escrever Word (2003 e 2007) arquivos em Python sem o uso de um objeto COM?
Eu sei que eu posso:

f = open('c:\file.doc', "w")
f.write(text)
f.close()

mas a Palavra vai lê-lo como um arquivo HTML não é um arquivo .doc nativa.

Foi útil?

Solução

Eu olhar para IronPython que intrinsecamente tem acesso a APIs Windows / Office porque ele é executado em tempo de execução .NET .

Outras dicas

python-docx , sua documentação oficial está disponível aqui .

Isso tem funcionado muito bem para mim.

Se você só o que ler, é simples usar o comando linux soffice convertê-lo para texto, e em seguida, coloque o texto em python:

doc (Word 2003, neste caso) e docx (Word 2007) são formatos diferentes, onde o último é geralmente apenas um arquivo de arquivos xml e imagem. Eu imagino que é muito possível escrever para docx arquivos, manipulando o conteúdo desses arquivos XML. No entanto, eu não vejo como você pode ler e gravar em um arquivo doc sem algum tipo de interface do componente COM.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top