Twilogがお亡くなりになったのでツイートアーカイブページを作りたいの巻

まだ四苦八苦中。
→notestockにてアーカイブをインポートする機能が追加されました。実験的機能とのことですので実験台になりにいきます。
diary.osa-p.net
 

おおまかな流れ(はてなブログにインポートする場合)

理論上(?)はこれでいけそうです。

  1. 公式から「アーカイブ」をダウンロード
  2. 「tweets.js」をCSV
  3. CSVを元にMT形式インポートファイルを作る
  4. ブログインポート

参考ページ
www.gravity-works.jp

公式から「アーカイブ」をダウンロード

設定からアーカイブダウンロード申請して、通知が来たらダウンロード。
皆同じことを考えているせいか、長年のツイート数が祟ったか、1週間待たされました。

「tweets.js」をCSV

こちらにお世話になる。
r17n.page
ただし、現在(2023.4.7)ダウンロードできるJSONファイルは少し仕様が違うようで、そのまま突っ込んでもうんともすんとも言いません。
色々試した結果、「tweets.js」内の冒頭

window.YTD.tweet.part0 =

を削除することと、ファイル名を「tweet.js」に変更することで読み込みに成功しました。

CSVを元にMT形式インポートファイルを作る

ここは突っ込みたいサービスやページによってはいらん作業なので話半分で。
 
とりあえず「はてなブログ」に突っ込もうと考えたのでMT形式インポートファイルを作る。
まずはインポートするブログに適当に記事を作成してエクスポート→雛形入手
あとは「CSVループコンバータ」で該当する箇所にデータをはめ込んでいきます。
www.vector.co.jp

ここでひっかかったのが日付表記です。MT形式の「DATE」表記は

mm.pngdd.pngyyyy hh:mm:ss

のところ、tweets.jsの表記は

yyyy.pngmm.pngdd hh:mm:ss

なので、そのままはめ込むことができない。正規表現が使えるエディタなどで書き換えが必要です。
他にも文字コードや改行の仕様など注意点が結構ありますが冒頭の参照ページが詳しいのでそちらへ。

ブログインポート

ここまで来たらインポートするだけ。

いや1記事1ツイートはさすがに無理があるな。
 
1日数件×1~2年のログならいざしらず、10年熟成の5万ツイート以上のデータなのでこれではいけませんね!

今後やること

CSVから月ごとに抽出→テキスト化

  • 上記テキスト群から真はめ込み用CSVデータの作成
  • MTファイルの作成etc.

本音

tweets.js突っ込んだらブログ化してくれる新生Twilog(またはそんなサービス)が出てほしい。*1
→冒頭参照

*1:ツイセーブにそういった機能はあるらしいが何年か前に停止しているらしいです。

コメント