はてなダイアリーのCSVファイルをlilyにimportする
id:ha-tan:20050316、id:ha-tan:20050321の続き(というかまだやってるのか)。
はてなダイアリーの「管理」からエクスポートできるCSVファイルをlily(Rubyで書かれたblogシステム)にimportできるようにちょきちょきするツールを書いてみた(CSVの特定のフィールドを切り出してファイルに保存、ファイルのタイムスタンプを更新してるだけ)。
うーん、やっぱりローカルでblogを見るのは何か間違っている気がするので、たぶん僕は使わないと思う。これももうメンテする気はあまりない。このプログラムのライセンスは、修正BSDライセンスとします。
使い方:
$ csv2bxm source lily_logdir
ソース: csv2bxm
#!/usr/bin/env ruby # -*- ruby -*- # # $Id: csv2bxm,v 1.1 2005/03/22 12:55:59 s-tanaka Exp $ # # usage: csv2bxm [hatena source] [output directory] # $KCODE = 'e' require 'csv' require 'nkf' require 'time' def hd_open(filename) is_title = true CSV.open(ARGV[0], 'r') do |row| if is_title is_title = false next end yield(row[0].data, row[2].data) end end def toeuc(str) NKF.nkf("-e -S", str) end def usage puts "usage: csv2bxm [hatena source] [output directory]" exit end usage if ARGV.size < 2 hd_open(ARGV[0]) do |date, body| time = Time.parse(date) filename = ARGV[1] + '/' + time.strftime("%Y%m%d.txt") open(filename, 'w') do |file| file.puts(toeuc(body)) end File.utime(time, time, filename); end
BUGS。
- コメントに対応していない。
- エラーチェックをいろいろはしょっています。(^^;;