Saída HTML Bonita para Arquivo com Indentação Usando lxml.html
Resposta Rápida
Para tornar o código HTML mais legível e estruturado em Python, podemos usar a biblioteca BeautifulSoup. Primeiro, vamos instalá-la com o comando pip install beautifulsoup4
. Em seguida, aplicamos o método prettify()
, que transforma seu código HTML e escreve o resultado em um arquivo da seguinte forma:
from bs4 import BeautifulSoup
# Seu código HTML original
html_content = "<seu_html_aqui>"
soup = BeautifulSoup(html_content, 'html.parser')
# Código processado
pretty_html = soup.prettify()
# Escreva este código em um arquivo
with open('formatado.html', 'w') as file:
file.write(pretty_html)
Consequentemente, seu código HTML se torna mais estruturado e compreensível, e pode ser encontrado no arquivo formatado.html
.
Ferramentas de Formatação de Código
BeautifulSoup é uma excelente ferramenta para processar HTML; no entanto, dependendo da sua tarefa, pode ser útil empregar outras ferramentas. Abaixo, uma seleção de várias ferramentas para formatação alternativa de código.
Formatação Produtiva com lxml
Se você estiver trabalhando com documentos HTML criados usando lxml
, use a função lxml.etree.tostring()
, configurando o parâmetro pretty_print=True
. Use o valor 'unicode'
para manipular este código em Python:
from lxml import etree
# Código HTML original
html_element = etree.Element("html")
# Código formatado
pretty_html = etree.tostring(html_element, encoding='unicode', pretty_print=True)
# Salve o código em 'formatado_lxml.html'
with open('formatado_lxml.html', 'w') as file:
file.write(pretty_html)
Como resultado, você obtém um arquivo HTML limpo e organizado.
O Conjunto de Ferramentas html5print
Se você precisa de um conjunto completo de ferramentas para processamento de código, use a biblioteca html5print
. Ela pode trabalhar não apenas com HTML, mas também com CSS e JavaScript.
from html5print import HTMLBeautifier
# Código HTML original
html = "<seu_codigo_html>"
# Código processado
pretty_html = HTMLBeautifier.beautify(html, 4)
# Salve o resultado em 'saida_html5.html'
with open('saida_html5.html', 'w') as file:
file.write(pretty_html)
Criação e Formatação com Yattag
Se você está em busca de uma ferramenta que constrói e formata HTML simultaneamente, então yattag pode lidar com essa tarefa.
from yattag import Doc, indent
# Código HTML original
doc, tag, text = Doc().tagtext()
with tag('html'):
with tag('body'):
with tag('p'):
text('Olá, mundo!')
# Código formatado
pretty_html = indent(doc.getvalue())
# Salve o código resultante em 'saida_yattag.html'
with open('saida_yattag.html', 'w') as file:
file.write(pretty_html)
Essa ferramenta permite que você controle a indentação, criando código de forma semelhante a como você gerencia um personagem em um jogo de FIFA!
Nos Esforçamos Para Tornar o Código HTML Correto
Lembre-se do principal ponto: antes de embelezar seu código HTML, certifique-se de que ele esteja semântico. Você pode usar o Validador do W3C para acompanhar a qualidade do seu código.
Visualização
Veja como você pode visualizar o código HTML como um bando de patos:
Antes de usar o Pretty Print: [🦆🦆🦆🦆🦆🦆🦆]
// Uma mistura caótica de elementos de código
O formato Pretty Print organiza tudo em uma série lógica de indentação:
Depois de aplicar o Pretty Print:
🦆
🐥
🦢
🐥
🦆
// As indentação ajudam a arranjar tudo de forma limpa em uma sequência lógica.
Isso demonstra claramente como o HTML não estruturado se transforma em código formatado e estruturado.
Recursos Úteis
- Formatador JavaScript Online — um serviço para formatar JavaScript que também funciona com HTML.
- GitHub - beautifier/js-beautify — código para formatação de HTML na plataforma Node.js.
- HTML Tidy — uma ferramenta que transforma código HTML em um formato limpo e compreensível.
- HTML-CSS-JS Prettify - Packages — um plugin para Sublime Text destinado à formatação de código HTML, CSS e JavaScript.
- Beautiful Soup: Nós a nomeamos de Tortoise porque nos ensinou. — uma biblioteca Python para processar HTML e XML, retornando estrutura e legibilidade ao código.
- Serviço de Validação de Marcação W3C — um validador HTML que verifica a correção do código.
- Trabalhando com HTML no Visual Studio Code — um guia sobre como criar HTML estiloso e irresistível.