Mechanizeでファイルアップロード
Mechanizeを使ってファイルの一括アップロードをしたかったのでコードを書いたら10行以内できた。
アドレスのURLエンコードだけ気をつければ、他に落とし穴はあまりなかった。
【アップロード操作例】
require 'rubygems' require 'mechanize' UPLOAD_URL = 'http://hogehoge.local/' UPLOAD_FILE = '/tmp/hogehoge.jpg' agent = WWW::Mechanize.new # ページを取得し page = agent.get(URI.parse(UPLOAD_URL)) # ファイルを選択後 page.forms[0].file_uploads[0].file_name = UPLOAD_FILE # アップロードする resultPage = agent.submit(page.forms[0])
【参考サイト】
http://d.hatena.ne.jp/kitamomonga/20080416/ruby_mechanize_file_upload
http://d.hatena.ne.jp/kitamomonga/20080416/ruby_mechanize_file_upload