我想下载这些包含http://www.pse.com.ph/stockMarket/marketInfo-marketActivity.html?tab=4复选框的文件,但我不知道在我的代码中要添加什么。
<?php
$dlurl = 'http://www.pse.com.ph/stockMarket/marketInfo-marketActivity.html?tab=4';
$saveTo = 'C:\Users\Test\Desktop\phpfiles\datena.pdf';
$fp = fopen($saveTo, 'w+');
if($fp == false){
throw new Exception('Could not open:' .$saveTo);
}
$ch = curl_init($dlurl);
curl_setopt($ch, CURLOPT_FILE, $fp);
curl_exec($ch);
?>
答案 0 :(得分:0)
该页面确实是一种形式。当您按下下载按钮时,它会在GET方法中发送表单,将浏览器更改为新的URL,如下所示:
http://www.pse.com.ph/stockMarket/marketInfo-marketActivity-marketReports.html?ajax=true&method=downloadMarketReports&ids=[%22PSE_DQTRT20173306%22]
ids
参数包含一个或多个文档ID。如果您只选择一个复选框直接下载PDF,如果您选择多个,则服务器会为您提供一个包含所有选定文档的zip。
在您的代码中,您应该将网址更改为所需的网址。
我想你想下载所有文件。不是吗?
之后,您需要使用正则表达式解析网页,以查找每个文档的IDS。 PHP Parse HTML code
当你有他们做了一个新的cURL(就像在1上使用的那样),下载网址和我之前发给你的所需的ID。