Conversor de HTML para Texto
Cole um trecho, o corpo de um e-mail ou uma página inteira, com até 1.000.000 caracteres.
Cole um HTML para converter.
O HTML tem mais de 1.000.000 caracteres. Cole uma parte menor.
Emails em texto simples, análises de texto e pipelines de contagem de palavras precisam que o HTML seja transformado na string legível que um humano veria, sem artefatos de marcação. Cole o HTML e esta ferramenta remove cada tag, decodifica entidades (& → &), colapsa sequências de espaços criadas por indentação e produz um bloco limpo de prosa legível pronto para análise ou para a parte text/plain de um email multipart.
Como remover HTML para texto
-
1
Cole o HTML
Um trecho, o corpo de um e-mail formatado ou uma página inteira, com até 1 milhão de caracteres.
-
2
Converter
Um clique: cada tag e atributo é removido e as entidades são decodificadas.
-
3
Revise as quebras de linha
Parágrafos, itens de lista e linhas de tabela se tornam linhas separadas, então o texto mantém sua estrutura.
-
4
Copie o texto
A saída é texto Unicode simples, seguro para ser usado em um contador de palavras, um modelo de email ou um modelo de sentimento.
Como a conversão lida com tags complicadas
Transformar HTML em texto é mais do que string.replace(/<[^>]+>/, ""): uma expressão regular ingênua deixa os códigos de entidades e os espaços de indentação no lugar, e não sabe que </p> deveria iniciar uma nova linha.
Tags em nível de bloco vs inline
Elementos de bloco (<p>, <div>, <h1> a <h6>, <li>, <tr> e similares) começam e terminam uma linha, e parágrafos, títulos, listas e tabelas ficam separados por uma linha em branco. Elementos inline (<a>, <span>, <strong>) não acrescentam nada, então o texto deles se integra à frase ao redor.
Comportamentos específicos de tags
| Tag | Tratamento |
|---|---|
<br> |
Uma quebra de linha |
<p>, <h1> a <h6>, <blockquote>, <pre> |
Uma linha em branco antes e depois |
<div>, <section>, <article> e outros blocos |
Uma linha própria |
<li> |
Uma nova linha que começa com - , ou com 1. , 2. e assim por diante em uma lista numerada; listas aninhadas ficam recuadas |
<tr>, <td>, <th> |
Uma linha para cada linha da tabela, com as células separadas por uma tabulação |
<a href="url">texto</a> |
texto; o atributo href é removido |
<img alt="texto"> |
Nada, a tag não tem texto visível |
<script>, <style>, <head>, <title>, <noscript>, <template> |
Removidas junto com o conteúdo |
Decodificação de entidades
- Entidades nomeadas (
&,©,é) decodificam para seu caractere Unicode. - Entidades numéricas (
©,©) também são decodificadas. - Entidades desconhecidas são preservadas literalmente, para que ferramentas de análise as vejam.
Normalização de espaços em branco
- Espaços e tabulações antes de uma quebra de linha são removidos.
- Três ou mais linhas em branco seguidas são reduzidas a uma única.
- Sequências de espaços, tabulações e quebras de linha no código-fonte viram um único espaço, como no navegador, exceto dentro de blocos
<pre>, que mantêm o espaçamento original. Espaços não separáveis ( ) viram espaços comuns.
Usos
- Gerar a parte
text/plainde um email multipart. - Limpar artigos extraídos antes de passar para um modelo de linguagem.
- Alimentar um índice de busca em texto simples.
- Calcular uma contagem honesta de palavras que ignora a marcação.
Perguntas frequentes
A formatação visual (negrito, cor, fonte) é perdida, esse é o objetivo. A estrutura sobrevive como quebras de linha: parágrafos, itens de lista e linhas de tabela se tornam linhas separadas, então o texto permanece legível.
O texto visível do link permanece, mas a URL é removida junto com os atributos da tag. Se você precisa das URLs, use um conversor dedicado de HTML para Markdown.
Eles são removidos junto com o conteúdo. Blocos <script>, <style>, <noscript> e <template>, o <head> do documento com o <title> e elementos marcados com hidden ou com o estilo display: none nunca chegam à saída, porque quem lê a página nunca os vê.
Sim. A saída é UTF-8 e preserva todos os caracteres não-ASCII da entrada. Entidades como © e é são decodificadas em seus equivalentes Unicode.
Ferramentas relacionadas
Gerador de cards CSS
Crie um card com seu título, texto e link opcional. Ajuste cores, borda, espaçamento, sombra e efeito ao passar o mouse. Depois copie ou baixe o HTML e o CSS.
Gerador de Docker Compose
Gere um docker-compose.yml a partir de definições de serviços com imagem, portas e volumes, com padrões de boas práticas.
Conversor de base numérica
Converta números entre binário, octal, decimal, hexadecimal e qualquer base personalizada de 2 a 36, com o detalhamento posicional.
Conversor de Tamanho de Arquivo
Converta entre bytes, KB, MB, GB, TB e as unidades binárias IEC (KiB, MiB, GiB, TiB), combinando decimal e binário como preferir.
Gerador de README
Gere um README.md estruturado a partir de alguns campos: nome do projeto, tagline, recursos, comando de instalação, trecho de início rápido, autor e licença. Cole direto no seu repositório.
Ofuscador de JavaScript
Ofusque JavaScript com codificação de array de strings, renomeação de variáveis, achatamento de fluxo de controle e injeção de código morto para proteção do front-end.
Ferramenta disponível em outros idiomas
- HTML till textomvandlare [SV]
- HTML naar tekst converter [NL]
- เครื่องแปลง HTML เป็นข้อความ [TH]
- HTML에서 텍스트로 변환기 [KO]
- مُحوّل HTML إلى نص [AR]
- Konverter HTML ke Teks [ID]
- Chuyển đổi HTML thành Văn bản [VI]
- Konwerter HTML do tekstu [PL]
- HTML zu Text Konverter [DE]
- HTMLからテキストへの変換ツール [JA]
- Convertidor de HTML a Texto [ES]
- Convertisseur HTML en texte [FR]
- HTML'den Metne Dönüştürücü [TR]
- HTML到文本转换器 [ZH]
- HTML to Text Converter [EN]
- Convertitore da HTML a Testo [IT]
- Преобразователь HTML в текст [RU]