Python

Como criar documento Word com Python

Neste tutorial veremos como gerar um documento do Word utilizando o python.


Introdução

Este será um tutorial rápido e útil para o dia-a-dia na geração de documentos e relatórios automatizados usando o python, com isso você verá como criar documento Word com  Python.

O que é o Python?

 

O Python é uma linguagem de programação de alto nível, interpretada, orientada a objetos, funcional, e possui uma tipagem tanto dinâmica quanto forte. O Python foi lançada em 1991 e seu criador foi Guido Van Rossum.

 

O que é a python-docx?

 

Python-docx é uma biblioteca utilizada para criar e atualizar arquivos Microsoft Word (.docx).

 

Requisitos para execução deste tutorial:

  • Python 3.x;
  • python-docx;

 

Como criar documento do Word utilizando o Python.

 

Antes de iniciar a codificação precisamos adicionar a lib  python-docx , então vamos adiciona-la usando o comando abaixo no terminal:

 

pip install python-docx

 

Pronto com a lib instalada, vamos importa a lib no código:

 

from docx import Document
from docx.shared import Inches            

 

1ª Criamos uma instância do Documento.

 

document = Document()

 

Adicionamos um título ao documento.

 


document.add_heading('Título do Documento', level=0)

 

Adicionamos um parágrafo e configuramos a estilização.

 

p = document.add_paragraph('Um simples parágrafo, ')
p.add_run('frase com estilo bold').bold = True  # Estiliza a frase com bold
p.add_run('frase com estilo italic.').italic = True #Estiliza a frase com italic

 

Com o código abaixo adicionamos um subtítulo ao documento :

 

document.add_heading('SubTítulo do Documento, level 1', level=1)

 

Para adicionar um parágrafo ao documento com uma lista não ordenada, vamos utilizar o comando:

 

document.add_paragraph(
    'Item da lista', style='List Bullet'
)          

 

Adiciona um parágrafo com uma lista ordenada:

 

document.add_paragraph(
  'Item ordenado', style='List Number'
)                  

 

Adiciona uma imagem ao documento, informando o tamanho da imagem em polegadas.

 

document.add_picture('./python-logo.png', width=Inches(1.25))

 

Cria uma tupla coms os dados a serem inseridos na tabela.

 

dados = (
    (1, 'Carla'),
    (2, 'Paulo'),
    (3, 'Lara')
)          

 

Após criar a tupla , será a vez da criação da tabela, com  a definição de (1) linha e (2) colunas.

 

table = document.add_table(rows=1, cols=2)

 

Logo após criar a tabela vamos configura a primeira linha da tabela para popular o cabeçalho.

 

hdr_cells = table.rows[0].cells
hdr_cells[0].text =  'Id'
hdr_cells[1].text = 'Nome'
          

 

Aqui mostro como percorrer a tupla e preencher as informações na tabela

 

for id, nome in dados:
    row_cells = table.add_row().cells
    row_cells[0].text = str(id)
    row_cells[1].text = nome          

 

Adiciona uma quebra de linha ao documento.

 

document.add_page_break()

 

Salva o documento gerado em um arquivo docx.

 

document.save('documento.docx')

 

Ao executar o código acima, será gerado um documento do Word igual ao da figura abaixo:

 

python-word
python-word

 

 

Código fonte do tutorial:

Código Fonte

 

Referências:

Deixe um comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *