VPassのページにログインして、月間利用明細のcsvファイルを取得する。
とりあえず取得してファイルに書くだけ。他のカードや銀行のも作ったらもうちょっと周りを考える。
#! ruby -Ku # 文字コードはutf8 require "rubygems" require "mechanize" USER="********" PASS="********" YYYYMM="200909" OUTFILE="#{YYYYMM}.csv" agent=WWW::Mechanize.new agent.user_agent_alias = "Windows IE 7" agent.get("https://www.smbc-card.com/mem/top/index.jsp") form=agent.page.form("InForm") form.userid=USER form.password=PASS form.submit form=agent.page.form("WebMeisaiCommonInputForm") form.field("p01").options.each do |opt| opt.select if opt.value==YYYYMM end form.submit link=agent.page.root.xpath("//a[text()='CSV形式で保存']")[0]["href"] file=agent.get("https://www.smbc-card.com#{link}") agent.get("https://www.smbc-card.com/vp/xt_logout.do") open(OUTFILE,"wb") {|f| f.print file.content}