はてなダイアリーの記事をMarkdown形式に一括変換
はじめに
はてな記法があまり好きになれないのとフロントエンドを触るために、ブログをGithub Pagesに移行しようと思っている。
middleman-blogをgithubでホストする
middlemanを使えば好きなエディタで記事書けるし、記法も最近よく使うMarkdownを使えるので便利そうだな、と。
そのために今まではてなで書いてきた記事を、Markdown形式にして移行できないか調べてみた。
調査
とりあえずはてなの記事を取得するのはAtomPub使えば良さそう。
はてなダイアリーAtomPub - Hatena Developer Center
認証突破にはwsseを使う。
RubyでAtompubのWSSE認証 - Panty's
取得したAtomの解析にはREXMLを。
XML処理 REXMLの使い方 - プログラムメモ
記事HTMLをMarkdown形式に変更するにはPandocを使うと良さそう。
Pandoc - About pandoc
Rubyのラッパーもあるし。
alphabetum/pandoc-ruby
成果物
作ってみた。
kaakaa/hatena2md
とりあえず大まかには変換できてるけど、middleman-blogに読み込ませると表示がおかしな部分が多々…。まぁ、昔の記事へのリンク貼っておけば良いか。
あと、middleman-blog用のMarkdownなのでタイトルやタグなどのヘッダがついてます。