HTMLタグ除去ツールの概要・基礎知識
HTMLタグ除去ツールは、HTMLコードからタグやスタイル情報を取り除き、純粋なテキスト部分だけを抽出するツールです。Webスクレイピングで取得したページのテキスト化、CMS移行時のクリーンアップ、HTMLメールのプレーンテキスト版作成など、テキストの再利用シーンで頻繁に必要になります。本ツールはタグの一括除去だけでなく、特定タグだけ残す部分除去、HTMLエンティティの変換・デコード、aタグのhref一覧抽出といった6種類の処理を1画面で切り替えて実行できます。すべてのテキスト処理はブラウザ内のDOMParserで完結し、入力したHTMLが外部サーバーへ送信されることはありません。
主な機能
| 機能 | 説明 |
|---|---|
| すべてのタグを除去 | HTMLタグを全て取り除き、scriptやstyleの中身も一緒に削除してテキストだけ残します |
| 指定タグだけ残す | a, p, strong など必要なタグを選んで他を一括除去。Markdown化前の整形に便利です |
| HTMLエンティティに変換 | < → < のように特殊文字をエスケープし、コード表示用に整えます |
| エンティティをデコード | < → < のように元に戻し、可読テキストに変換します |
| テキストだけ抽出 | タグ除去に加え、連続空白や空行を整理して読みやすい段落に整形します |
| リンク抽出 | aタグのhref属性をすべて抽出し、URL一覧として出力します |
使い方の流れ
- 「HTMLを入力」欄にHTMLコードを貼り付けます。「サンプルHTMLを入力」ボタンで動作確認用のサンプルを呼び出すこともできます。
- 処理ボタン(すべてのタグを除去/指定タグだけ残す/エンティティ変換/デコード/テキスト抽出/リンク抽出)から目的のものを1つクリックします。
- 「指定タグだけ残す」を選んだ場合は、続けて表示されるチェックリストで残したいタグを選び、「実行」を押します。リストにないタグはカンマ区切りで追加できます。
- 下部の「結果」欄に処理後のテキストが表示されます。情報バーで入力前後の文字数差も確認できます。
- 「結果をコピー」でクリップボードに転送し、CMSや他のエディタへ貼り付けます。何度でも処理を切り替えて再実行できます。
こんな場面で使う
- Webスクレイピング後の整形:fetchやcurlで取得したHTMLから本文テキストだけを抽出し、要約・分析のインプットにします。
- CMS移行・記事のリライト:WordPressからエクスポートしたHTML本文を、Notion・Markdown形式へ移すための前処理として使えます。
- HTMLメールのテキスト版作成:マルチパートメールのtext/plainパートに必要な、装飾なしテキストを素早く生成できます。
- ブログでHTMLコードを掲載する:「<p>〜</p>」のようなコード例をエンティティ変換し、そのままブログに貼り付けても表示崩れしません。
- ページ内リンクの一覧化:競合サイトの構造把握や、サイト移行時のリンク監査でURL抽出を行います。
使う前に知っておきたい注意点
- scriptタグ・styleタグは「すべてのタグを除去」「テキストだけ抽出」のときに中身ごと削除されます。JavaScriptコードやCSSセレクタを残したい場合は、エンティティ変換を選んでください。
- 大きなHTML(数MB級)を貼り付けるとブラウザのメモリを大量に消費し、フリーズする可能性があります。1MB以下を目安に分割して処理するのが安全です。
- 「指定タグだけ残す」で a タグを残すと href 属性も保持されますが、onclick などのイベントハンドラ属性は除去されません。サニタイズ目的で使う場合は別途専用のサニタイザを併用してください。
- HTMLエンティティの変換対象は < > & " ' などの基本文字です。日本語の特殊記号やUnicode絵文字はそのまま残ります。
- 本ツールはテキスト処理が目的で、XSS対策や本格的なHTMLサニタイズを保証するものではありません。Webサービス本番のフォーム入力をクレンジングする用途には、サーバーサイドのライブラリ(DOMPurifyなど)を組み合わせてください。
用語の補足
- HTMLエンティティ:HTMLで特殊な意味を持つ文字(<、>、&など)を表すための代替表記。< が < を表します。
- DOMParser:JavaScript標準のHTML解析API。本ツールはこれを使ってブラウザ内で安全にHTMLをパースしています。
- サニタイズ:ユーザー入力からスクリプトを取り除くなど、安全なHTMLに整形すること。本ツールの「タグ除去」は簡易的なサニタイズの第一歩として使えます。