我正在尝试从以下网站下载csv / xls文件。 http://global.krx.co.kr/contents/GLB/05/0503/0503030500/GLB0503030500.jsp
这是一个jsp链接。我需要下拉列表中的所有数据,我不知道如何使用perl自动执行此操作。
似乎该流程已分为get请求和post请求。我能够从get请求得到一个很好的回应。
my $indexURL = 'http://global.krx.co.kr/contents/COM/GenerateOTP.jspx?name=fileDown&filetype=xls&url=GLB/05/0503/0503030500/glb0503030500&market_gubun=ALL&indx_ind_cd=5042&pagePath=%2Fcontents%2FGLB%2F05%2F0503%2F0503030500%2FGLB0503030500.jsp';
my $index_headers = HTTP::Headers->new(
'Host' => 'global.krx.co.kr',
'Connection' => 'keep-alive',
'Accept' => '*/*',
'X-Requested-With' => 'XMLHttpRequest',
'User-Agent' => 'Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/46.0.2490.80 Safari/537.36',
'Referer' => 'http://global.krx.co.kr/contents/GLB/05/0503/0503030500/GLB0503030500.jsp',
'Accept-Encoding' => 'gzip, deflate, sdch',
'Accept-Language' => 'en-US,en;q=0.8',
'Cookie' => '.....'
);
$ua->default_headers($index_headers);
my $index_request = GET $indexURL;
my $index_response = $ua->request($index_request);
if ($index_response->is_success) {
return $index_response->as_string;
}
else {
die $index_response->status_line;
}
回复如下:
code=LNZvLrs55%2F83HQ8QYeu8y57963Dw36TDrS%2FLsbKj%2FV5RBPett1Paohnq12eaNhjdXfwUcHoZkDay2EdBJJ2wyq5X1cbvqWre3xwoF4I0W7x1oz1ApsgOslM4Jezg0T2xEL1A2VtfeysNo8Bcgl3W1VeSeaPJUM2xK%2FlKL1byrefEijmL5Im%2BTK86sb3zMT3jzTVPH2kCaWat4%2BPSzWdd%2BHneGEaVklHWE%2BCEA4nrhhm7n1nfZOxGtRY%2FOHxS2zxhnVcLKM7vrW6JyokFhgt3TTJve3Bpp3UPRrnFNMxDhSw%3D
我认为这是针对帖子请求但我无法下载文件。不确定我的方式是否正确。接受任何可行的建议!
任何人都可以提供帮助吗? 感谢。