使用PHP卷曲从多个网站提取数据提交
问题描述:
我必须从通过多次提交网站提取数据,并将这必须自动完成......流程如下...使用PHP卷曲从多个网站提取数据提交
- 转到此页面... http://www.licindia.in/premium_calculator.htm。
- 选择一些内容然后提交。这将带我到一个表格
- 填写表格并提交它...
- 获取生成的html。并提取数据。
我以前用curl远程登录网站,但无论如何,我似乎无法得到这个工作。
$url="http://www.licindia.in/premium_calculator.htm";
$postdata = "thepostdata"
$cookie = "cookie.txt" ;
$ch = curl_init();
curl_setopt ($ch, CURLOPT_URL, $url);
curl_setopt ($ch, CURLOPT_SSL_VERIFYPEER, true);
curl_setopt ($ch, CURLOPT_USERAGENT, "Mozilla/5.0 (Windows NT 6.1; WOW64; rv:13.0) Gecko/20100101 Firefox/13.0");
curl_setopt($ch,CURLOPT_COOKIESESSION,false);
curl_setopt ($ch, CURLOPT_TIMEOUT, 60);
curl_setopt ($ch, CURLOPT_FOLLOWLOCATION, 1);
curl_setopt ($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt ($ch, CURLOPT_REFERER, $referer);
curl_setopt ($ch, CURLOPT_COOKIEJAR, $cookie);
curl_setopt ($ch, CURLOPT_POSTFIELDS, $postdata);
curl_setopt ($ch, CURLOPT_POST, 1);
$result = curl_exec ($ch);
curl_close($ch);
像这样的事情我已经尝试...这不是实际thing..but这是类似
答
我想你的第一个问题是,您链接实际上是从加载网页上的表格一个iframe
。
您会想要使用iframe
的url,因为cURL不会从父页面加载iframe
srouce。
+0
感谢您的信息。我忽略了这一点。但现在如果你已经看到了页面和iframe部分,你能告诉我是否可以使用curl从那里获取数据吗?有jsession id ...以及隐藏字段,其中包含我不知道的另一个加密数据。 – 2012-08-18 08:50:56
m真的很抱歉因为我现在无法发布代码,因为我已经在家里尝试过了。现在m在工作场所..但是啊..我写了一个脚本,声明表单提交所需的sbumit url和表单数据。然后我允许在curl中重定向,这样它给了我新的页面。 – 2012-08-17 12:54:12
你忘了你的脚本回家吗?哦,你不能重拍吗? – 2012-08-17 12:55:53
好耶..我可以做到这一点,但它需要时间..你可以看到,如果你检查他们的形式是如此充分的JavaScript的url,他们提交使用JavaScript加形式数据,需要准备之前执行卷曲会是复杂的结构..多数民众赞成它..plus有一个问题的会议 – 2012-08-17 13:04:13