こんにちは。blueです。
- Twitterの過去の全発言を振り返りたい
- 発言履歴をExcelでまとめたい
といったことはないでしょうか?
これまではtweet.js.Loaderというサイトを使って簡単にデータを取得できていたのですが、現在はできなくなっています(2022年12月確認)。
その為今回はPower Queryを用いて行う方法について説明します。
JavaScriptの加工は少し必要ですが簡単にできますのでぜひ勉強していってください(Power Queryの知識は必要です)。
Power Queryに関してどの書籍を買ったらいいの?と思われている方には以下がお勧めです。簡単なボタン操作から、関数を使った処理まで、サンプルデータを一式操作してみるだけでPower Queryが使えるようになります。購入して間違いのないお勧めの一冊です。
結論
以下の3つの手順を踏むことでExcelでの編集が可能になります。
- Twitterからアーカイブをダウンロードする
- テキストエディタで開いてtweets.jsファイルを修正する
- jsファイルをPower Queryで読み込む
次からそれぞれについて説明します。
Twitterからアーカイブをダウンロードする
1 Twitterにアクセスし、「もっと見る」をクリックする

2「設定とサポート」-「設定とプライバシー」をクリック

3 「アカウント」ー「データのアーカイブをダウンロード」をクリック

4 本人確認が必要になるので指示に従う


5 「アーカイブをダウンロード」をクリックする

6 通知が来るまで待つ(私の場合は約1日かかりました)
7 通知が来たら「通知の内容」をクリックする

8 「アーカイブをダウンロード」をクリックする

9 「アーカイブをダウンロード」をクリックする

10 得られたファイルを解凍する
得られたファイルは以下の構成になっています。

この中の[data]-[tweets.js]を使用します。
テキストエディタを用いてtweets.jsファイルを修正する
tweets.jsはJSONというJavaScriptのオブジェクトの書き方を元にしたデータファイルです。
JSONはPower Queryで読み込むことができるのですが、少し修正が必要です。
その為次の方法でjsファイルを修正します。
1 テキストエディタ(ここではメモ帳)を開く

2 [ファイル]-[開く]よりtweets.jsファイルを開く(拡張子をすべてのファイルにして表示させてください)

3 最初の行のwindow.YTD.tweets.part0 =を削除する([からは残すこと)

4 ファイルを保存する。ファイルの種類を「すべてのファイル」とし、「tweets2.js」(ファイル名は適当で可。ただし.jsとすること)とする

これでPower Queryに取り込むことができるようになります。
(ちなみにこの処理を行わないでPower Queryで取り込むと以下のエラーが出ます。最初の文字があるためJSONとして取り込んでくれません)

jsファイルをPower Queryで読み込む
1 空のExcelを開く
2 「データ」-「データの取得」-「ファイルから」-「JSONから(J)」で先ほどのtweets2.jsファイルをインポートする

3 Power Queryエディターが立ち上がる。「変換」-「テーブルへの変換」をクリックする

4 「区切り記号を~」を「なし」、余分な列~を「エラーとして表示」としてOKをクリックする

5 変換された列に対して「展開ボタン」(図の赤枠)をクリックする

6 tweet列をチェック、元の列名を~のチェックを外して、OKをクリックする

7 表示されたtweet列に対して「展開ボタン」をクリック、必要な列を選択(ここでは作成日時である created_atとテキスト情報であるfull_textを選択)、元の列名を~のチェックを外して、OKをクリックする

これでTwitterの全履歴を取得することができました。

参考
使用頻度の高い列についてまとめました
英語 | 日本語 |
favorite_count | いいねの数 |
retweet_count | リツイートの数(引用ツイートは含まない) |
created_at | UTC(協定世界時)作成日時 |
full_text | 文章 |
possibly_sensitive | コンテンツが敏感であるかどうかを判定 Trueで敏感、Falseは問題なし。リンクが貼られていないテキスト文のみだとnullになる |
詳細はTwitter APIのサイトに書かれていますが、今回の「データのアーカイブのダウンロード」の方法では一部の情報しか抜き出せません。ご注意ください。
まとめ
今回は全ツイートの履歴取得をtweet.js loaderではなく、Power Queryで行う方法について説明しました。
ポイントは
- Twitterからアーカイブをダウンロードする
- jsファイルをテキストエディタを用いて編集する
- jsファイルをPower Queryを使って取り込む
です。
Excelでデータをまとめる際はPower Queryを使うのが便利です。知らない方でも一から学べるようにまとめています。ぜひご覧ください。

Power Queryに関してどの書籍を買ったらいいの?と思われている方には以下がお勧めです。簡単なボタン操作から、関数を使った処理まで、サンプルデータを一式操作してみるだけでPower Queryが使えるようになります。購入して間違いのないお勧めの一冊です。
コメント