2012-08-17 102 views
0

我必須從通過多次提交網站提取數據,並將這必須自動完成......流程如下...使用PHP捲曲從多個網站提取數據提交

  1. 轉到此頁面... http://www.licindia.in/premium_calculator.htm。
  2. 選擇一些內容然後提交。這將帶我到一個表格
  3. 填寫表格並提交它...
  4. 獲取生成的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這是類似

+0

m真的很抱歉因爲我現在無法發佈代碼,因爲我已經在家裏嘗試過了。現在m在工作場所..但是啊..我寫了一個腳本,聲明表單提交所需的sbumit url和表單數據。然後我允許在curl中重定向,這樣它給了我新的頁面。 – 2012-08-17 12:54:12

+0

你忘了你的腳本回家嗎?哦,你不能重拍嗎? – 2012-08-17 12:55:53

+0

好耶..我可以做到這一點,但它需要時間..你可以看到,如果你檢查他們的形式是如此充分的JavaScript的url,他們提交使用JavaScript加形式數據,需要準備之前執行卷曲會是複雜的結構..多數民衆贊成它..plus有一個問題的會議 – 2012-08-17 13:04:13

回答

1

我想你的第一個問題是,您鏈接實際上是從加載網頁上的表格一個iframe

您會想要使用iframe的url,因爲cURL不會從父頁面加載iframe srouce。

+0

感謝您的信息。我忽略了這一點。但現在如果你已經看到了頁面和iframe部分,你能告訴我是否可以使用curl從那裏獲取數據嗎?有jsession id ...以及隱藏字段,其中包含我不知道的另一個加密數據。 – 2012-08-18 08:50:56