WhatsApp のチャットをテキストに変換 — 非公開・無料

書き出した WhatsApp のチャットをブラウザーできれいなテキストに変換します。暗号化の通知、参加メッセージ、メディアの代替行を取り除きます。アップロードは一切ありません。

エクスポートした WhatsApp のトーク履歴を読める形に整える

WhatsApp はトーク履歴をテキストファイルとして渡してくれるので、それで話は終わったように聞こえます。開いてみるとそうではありません。どの行にもタイムスタンプが付き、その書式は書き出した端末によって変わります。一行目は暗号化についての告知です。その後には、グループへの参加、件名の変更、削除済みメッセージの印、そして——写真をやり取りしていたなら——<Media omitted> としか書かれていない行が大量に散らばっています。

このページはそれを読めるトーク履歴に変えます。.txt、または WhatsApp がそれを包む .zip を置けば、結果がここに出ます。ファイルはこのブラウザタブの中で読まれ、アップロードされることはありません。

WhatsApp からトーク履歴を書き出す

iPhone でも Android でも手順は同じです。トークを開き、上部の連絡先名かグループ名をタップし、下にスクロールしてチャットをエクスポートを選び、メディアを含めないを選びます。メディアありを選ぶと写真と音声メッセージがすべて添付され、アーカイブは数百倍の大きさになりますが、文字起こしには何も足しません。メッセージ本体はどちらでも同一です。

できあがるのは _chat.txt という名前のファイルで、たいていは .zip に入り、選んだ共有方法で送られます。裸のテキストファイルでも zip でも、ここではどちらも使えます。

難所はタイムスタンプの書式

WhatsApp のエクスポートに単一の書式はありません。メッセージの形が少なくとも二種類、日付の書式に至っては数え切れないほどあり、どれになるかは OS と端末の地域設定で決まります。

iOS はタイムスタンプを角括弧に入れて書きます。[12/03/2024, 14:23:01] Name: message のような形です。Android は括弧なしで書き、ハイフンでメッセージと区切ります。12/03/2024, 14:23 - Name: message です。秒はある場合とない場合があります。時刻は 24 時間制のことも、AM/PM 付きの 12 時間制のこともあります。日付は日が先のことも、月が先のことも、年が先のこともあります。区切り記号はスラッシュ、ピリオド、ハイフンのいずれもありえます。

パーサーは両方のメッセージ形を受け入れ、日付はゆるく照合して、暦の日付として解釈しようとせずタイムスタンプをそのまま取り込みます。この最後の判断は意図的なものです。03/12/2024 は世界の大部分では 12 月 3 日、アメリカでは 3 月 12 日であり、どちらなのかを示すものはファイルの中にありません。推測すれば、誰かの文字起こしの半分に黙って誤った日付を付けることになります。ここでは WhatsApp が書いたままの文字列を表示します。その場にいた人にとって、それは曖昧ではありません。

複数行のメッセージ

改行を含むメッセージ——箇条書き、住所、誰かが途中で折り返した長い段落——は、エクスポートではタイムスタンプ付きの一行と、それに続くタイムスタンプも印もない行として現れます。区切り記号はありません。手がかりはタイムスタンプがないことだけです。

そこで、認識できるタイムスタンプで始まらない行はすべて直前のメッセージに連結します。これが正しい読み方であり、簡単なスクリプトで見たことがあるかもしれない壊れ方の説明にもなります。ファイルを改行で分割すると、誰のものでもない断片が生まれ、住所や箇条書きが独立したメッセージのように文字起こしの中に散らばります。

フィルターが取り除くもの

既定では二種類が落ち、スイッチでどちらも戻せます。

  • システム通知。冒頭の暗号化のメッセージ、「X が Y を追加しました」「X が退出しました」「あなたはこのメッセージを削除しました」、件名やアイコンの変更、セキュリティコードの通知、不在着信の記録。活発なグループでは、これらが実際のメッセージをはるかに上回ることがあります。
  • メディアのプレースホルダー。<Media omitted>、「画像を省略しました」「音声を省略しました」といった各言語版、そして (file attached) の接尾辞。写真中心のトークではこれが行の大半を占め、どれも内容を運びません。

何がいつ送られたかという流れ自体が見たいものなら、メディアの行は残してください。誰がいつグループに入ったかの記録が要るなら、システム通知を残してください。それ以外の場合はどちらもノイズで、取り除くとたいていファイルは半分になります。

何に使われているか

グループを抜ける前や機種変更の前に会話の写しを残す。証拠としてトーク履歴を整える——生のログより、きれいに読める文字起こしのほうがはるかに役に立ちます。三百件のメッセージのどこかで決まった結論を要約させるために、長いスレッドをモデルに渡す。どこにも書き残されなかった細部を何年分ものメッセージから探す。家族グループの履歴を印刷できる形にする。

プライバシーの話は飾りではない

WhatsApp のメッセージは通信経路上ではエンドツーエンドで暗号化されています。エクスポートした瞬間に、その保護は終わります。端末に落ちたファイルは平文で、渡した相手はそれを読めます。それをウェブの変換サービスにアップロードすることは、そこまで運んできた暗号化の意味をまるごと無効にする行為です。

ここでは何もアップロードされません。パーサーはこのタブで動く JavaScript です。エクスポートはブラウザが読み、メモリ上で変換され、表示されます。サーバーがそれを見ることはないので、読むべき保持ポリシーも、出すべき削除依頼もありません。タブを閉じればそれで終わりです。

他のプラットフォームのエクスポートはチャット履歴の共通エクスポートページで扱えます。形式は自動で判定されます。