移行するので Wordpress.com でホストしている旧ブログをアーカイブすることにした。 https://www.jmuk.org/wp.jmuk.org/ 以下に保存している。うまく保存されてるのかはよくわからないけど。

さて、アーカイブをどうやるかだけど、せっかくなので(当時Sonnet 3.5だった)Claude Codeにお願いしてみた。張り切って Python スクリプトをガンガン書いていく。方式としてはWordPressのAPIに沿ってコンテンツをJSONでダウンロードしてからHTMLを生成していくようだ。え、何だそれ?

いやいやそんなことしたらテーマとかわからなくなっちゃうじゃん、みたいなことを言うとなるほどそうですねといってHTMLの生成を工夫し始めてきた。月ごとインデックスとかどうするつもりなのかわからんけどこれはダメだなーという印象。

それでしばらく放置していたがこないだ重い腰を上げて再開するにあたり、まっさらなレポジトリでgemini-CLIに聞いてみた。するといきなり wget コマンドでやりましょう、実行していい? みたいなことを聞いてきて考え方が違うなと感じた。wgetだと微妙な面もあるんじゃないかという気がするが、面倒だったので(フラグはdepthの設定などをちょっといじって)実行させた。取りこぼしがあるのかもしれないけど、もう面倒なのでこれでいいということにした。

アーカイブとして保存するにあたりちょっとトリッキーだったのは、画像などでクエリパラメータ付きのデータがそのままファイルとして保存されてしまうところ。ファイル名から適切な拡張子が選ばれず、Content-Typeを推定できない可能性がある部分が残ってしまう。ただそうなるパターンは数が少なそうだったので適当なヒューリスティクスで誤魔化した。それで旧サイトからリダイレクションを設定してアーカイブ完了、ということに。

それにしても、割と最近になって移行したと思ってたのだけど、なんと10年以上くらいこのサイトでブログやってたらしい。アーカイブされた記事をいろいろ眺めたりしていて昔の記事や画像を眺めるとこの10年という変遷が思い出されてなんとも趣深い。まぁ自分にとってだけの話なのですが。