ruby mechanize:如何从GET

时间:2015-12-24 06:10:26

标签: ruby mechanize

我试图从银行帐户(我的)下载交易。

第1步:填写并提交表格(POST)。

步骤2.在此之后,浏览器发送GET

https://accountinfo.corp.xxxxxxx.com.au/AIWeb/ExportAccounts/DownloadExport?OfficeId=201012249&ScheduleId=&FileFormat=CSV-Tran&IsAccountExport=False

浏览器接收文件并保存(默认操作)。

http响应是:

(Status-Line)   HTTP/1.1 200 OK
Content-Length  73
Content-Type    application/AIUsers
Date    Thu, 24 Dec 2015 03:24:22 GMT
p3p CP="NON CUR OTPi OUR NOR UNI"
x-frame-options SAMEORIGIN
x-aspnetmvc-version 1.0
Cache-Control   private
Content-Disposition attachment; filename=Accounts_24-12-2015_91456974_T.CSV

我模拟表单提交(使用ruby mechanize),等待几秒钟,然后agent.get上面的URL,如:

url = "https://accountinfo.corp.westpac.com.au/AIWeb/ExportAccounts/DownloadExport?OfficeId=201012249&ScheduleId=&FileFormat=CSV-Tran&IsAccountExport=False"
download_page = agent.get(url)

结果不正确:

<html><body><script>window.parent.location = '/AIWeb/ExportAccounts/ShowErrorMessage?errorCode=3';</script></body></html>

非常感谢如何获得GET的结果。

此致

1 个答案:

答案 0 :(得分:1)

服务器在标头(和/或)cookie中必须有一些东西。您可以使用chrome检查器或firebug检查它,并在机械化支持时添加到您的请求中(不知道那是什么)。