2012-11-18 5 views
0

Google Checkout 보고서 (스프레드 시트 (.csv)로 데이터 다운로드)를 가져 오려고합니다. 불행히도 API를 사용할 수 없습니다. (영국과 미국 계정에만 예약되어 있습니다 ...)Google Checkout CSV 검색 (API 없음)

Mechanize와 Ruby로 스크립트를 만들었지 만 다음과 같은 오류가 있습니다. "Net :: HTTPBadRequest 1.1 400 Bad Request ".

여기 내 코드입니다 : pguardiario하는

require 'rubygems' 
require 'mechanize' 
require 'logger' 

agent = Mechanize.new { |a| a.log = Logger.new(STDERR) } 
agent.user_agent_alias = 'Mac Safari' 
page = agent.get 'https://checkout.google.com/sell/orders' 

form = page.forms.first 
form.Email = '[email protected]' 
form.Passwd = 'password' 
page = agent.submit(form, form.buttons.first) 

form = page.forms.last 
p form 
form['start-date'] = "2012-11-16" 
form['end-date'] = "2012-11-17" 
form['column-style'] = "EXPANDED" 
#form['_type'] = "order-list-request" 
#form['date-time-zone'] = "America/Los_Angeles" 
#form['financial-state'] = "" 
#form['query-type'] = "" 
p form 

begin 
    page = agent.submit(form, form.buttons.first) 
rescue Mechanize::ResponseCodeError => ex 
    puts ex.page.body 
end 
+0

가장 좋은 방법은 찰스 또는 피들러 같은 디버거를 통해 프록시를 지정하고 실제 브라우저 요청과 비교하여 올바르게 얻을 때까지 요청을 미세 조정하는 것입니다. – pguardiario

+0

감사합니다. 정말 도움이되었습니다! 내 오류를 발견! –

답변

0

감사 찰스 프록시, 나는 불필요한 필드가 발생했습니다 ... 내 오류를 발견!