iPhotoのアルバムを一旦HTML形式で書き出すと、指定したサイズに写真が書き出されるし、しかもメタ情報もHTMLの本文中に記載される。
これをうまくつかって一括取込した方が意外と自分のニーズにはあいそう。
流れとしてはこんな感じでいけそう
- Rubyのスクリプト側の処理
- 書き出したファイル1つづつに対してenex形式のノートに変換
- enex形式になったものを、AppleScriptからEvernoteを操作して一括取り込み
iPhotoから書き出されるファイルに対する処理としては
- HTMLのパースをして、写真のタイトル→Evernoteのタイトル、写真の撮影日→Evernoteのノート作成日、写真撮影の際のメタデータ→Evernoteのノート本文という対応をするように処理
- img srcで指定されている元の画像データに対してBase64エンコード処理を施す
- 上記の2点を結合してenex形式のファイルを作成する
という感じ。Nokogiri使ってパースする際に、tableタグの特定の箇所のみ指定するっていうのがよくわからないので、これは調べる必要あり
require 'rubygems' require 'nokogiri' Dir::glob("/Users/hoyamada/Desktop/2010-photobook/Pages/*.html").each{|f| begin doc = Nokogiri::HTML(open(f)) @title = doc.search('table/tr/td').text puts @title rescue OpenURI::HTTPError => e e.io.close end }