日記のURLに対応するURLに何か付け足したURLになると思うのですが。これはリダイレクト設定後要確認ですね。日記ページのURLのリダイレクト先を確認したところ、匿名セクションに対応するエントリのURLではなく、その日一日分のエントリをまとめたページに飛んでいました。対応関係は以下のようになっていました。作った対応表をこのルールに合わせて修正するスクリプトを以下に。STDOUT)さらにリダイレクトの不具合(制限?)で一部のエントリのリダイレクト先が間違っているという問題がありました。これは機械的に置き換えることができませんし、3件だけなので手動で対応表を修正することで対応しました。いうスクリプトを作りました。ワーキングディレクトリで以下を実行します。ローカルで修正したエントリファイルが残っている場合は先に更新しておきます。全件ダウンロードの指定になります。ここで2つ問題が出ました。フィードを取得してエントリを切り出して保存するのですが、フィードに全件含まれていないようなのです。年の13件(15件中)が含まれていませんでした。1.0.1)エントリの解析に失敗しました。1.0.1+patch)エントリの解析に失敗しました。エントリの編集日時を解析するところでエラーになっています。準拠していない日付書式で書かれているせいでエラーになるようです。これはスクリプト側での対応は困難ですね...これらのエントリは1789年の1件を除いて「はてなダイアリーライター」のテスト用の記事ですし、重要度は低いので今回は諦めることにしました。ファイルにエントリのURLを保存します。これを利用して以下のスクリプトでエントリのURLとエントリファイルの対応表を作成します。ワーキングディレクトリで実行します。ワーキングディレクトリで実行します。STDOUT)エントリファイルにトラックバックを追加するいよいよエントリファイルを修正します。ワーキングディレクトリを丸ごとバックアップしておきます。トラックバックをどう表示するか考えものですが、とりあえずエントリの末尾に普通に表示します。末尾と言っても注釈記法を使うと注釈の方が後ろになるという問題があるのですが、今回はそこは目をつぶります。いじって表示するとかしないと対処できないので...以下のスクリプトを使いますが、引数には三つのファイルを渡します。ワーキングディレクトリで実行します。}}修正したエントリのアップロードここまできたらいよいよエントリを更新します。修正されたエントリファイルの件数を確認します。hbw.rb新規エントリファイルはありません。エントリを更新しました。エントリを更新しました。エントリを更新しました。速度規制(1件毎に1〜1.5秒のウェイト)が入っているのでややゆっくり目ですが黙々とアップロードが進んでいき、30分ほどで無事更新が完了しました。*1修正されたエントリはこんな感じになりました。いうことで、これでトラックバック移行作業は完了です。わかりにくい部分も多々ありますが、スクリプトの処理内容が理解できる人だけがわかるような書き方にしています。他人の環境での動作保証はできないのでよく理解した上で自己責任で実行してください。あと、これは終わってから気付いたんですが、この作業やると、idコールむちゃくちゃ飛びますね...改めまして、申し訳ありませんでした。事件みたいなことになったらやだなー...idコールは回避方法がなさそうなので参考にする人はそのあたりはご覚悟を。17:10はてなダイアリーからのトラックバックの移行(その4)(完)Tweet広告を非表示にするもっと読むコメントを書く2019-01-26はてなダイアリーインポート後のリダイレクトがうまくいかない記事があるhatenaトラックバック移行作業時に気付いたのですが、はてなダイアリーのインポート後にリダイレクト設定をしても、一部の記事で間違ったURLにリダイレクトされる現象が発生しています。具体的には2005年2月29日の記事です。...はい、2005年はうるう年ではないので、2月29日なんて日付は本来ありません。はてなダイアリーはそのような日付を許容していました。「はてなダイアリーライター」を使って誤って日付を書き間違えた日記を投稿したところ、エラーにならず2月29日の日記ができてしまったのです。そのような日付の記事はインポートの際にどうなるかというと、ちゃんと漏れなく取り込まれています。前日の2月28日のエントリとして取り込まれていました。