Re: [請益] 有關HTTP POST Request的問題
※ 引述《tomelf (Cheer UP!)》之銘言:
: 小弟想要寫一個功能,能夠自動擷取Http Request的回傳頁面
: 舉例來說,任意一個有Query Form的網頁(如http://www.yahoo.com/)
: 我要抓出網頁中的form,並且自動填入資料,擷取回傳頁面
: 當form的傳送method=get時,我知道怎樣直接取得回傳頁面,
: 但是當form method=post時就會出問題
: (因為回傳頁面常常不是form action中的那個頁面)
: 我有google過相關方法,大部分都只有提到如何利用PHP或javascript去對某個
: 頁面做get或post的request,但都沒有提到怎樣處理以上的問題。
: 想請問各位高手,有沒有什麼好方法可以解決這個問題,萬分感謝Orz
>回應alpe:
例如http://lyricsearch.net/這個網頁,裡面有一個form,
aciton=http://www.optinpro.com/scripts/subscribe.asp, method=POST
我現在是用PEAR裡的html_request來做,對於POST的作法如下:(程式碼略微修改過)
$dataKey: POST參數的key值陣列
$data: 存POST參數的陣列
if($form_method=='post'){
for($i=0;$i<count($dataKey);$i++){
$req->addPostData($dataKey[$i],$data[$dataKey[$i]]);
}
if (!PEAR::isError($req->sendRequest())) {
return $req->getResponseBody();
}else{
echo 'HTTP Post error: Cannot using this url!<br>';
}
}
這樣會用POST傳遞參數到網站並且回傳action網址內容。
然而上面的回傳不是我要的,真正的回傳網頁會他會自動redirect到
http://search.lyrics.astraweb.com/?word=ricky+martin去
這個才是我真正要的頁面
>回應MrMarcus:
CURL中有可以解決這方法的library嗎?我會去google看看的,謝謝!
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.115.220.169
※ 編輯: tomelf 來自: 140.115.220.169 (04/27 00:46)
推
04/27 00:48, , 1F
04/27 00:48, 1F
※ 編輯: tomelf 來自: 140.115.220.169 (04/27 00:52)
推
04/27 00:55, , 2F
04/27 00:55, 2F
推
04/27 00:55, , 3F
04/27 00:55, 3F
→
04/27 00:56, , 4F
04/27 00:56, 4F
→
04/27 00:57, , 5F
04/27 00:57, 5F
→
04/27 00:56, , 6F
04/27 00:56, 6F
→
04/27 00:57, , 7F
04/27 00:57, 7F
→
04/27 00:59, , 8F
04/27 00:59, 8F
推
04/27 00:59, , 9F
04/27 00:59, 9F
→
04/27 01:02, , 10F
04/27 01:02, 10F
→
04/27 01:03, , 11F
04/27 01:03, 11F
→
04/27 01:05, , 12F
04/27 01:05, 12F
推
04/27 01:11, , 13F
04/27 01:11, 13F
討論串 (同標題文章)
本文引述了以下文章的的內容:
完整討論串 (本文為第 2 之 2 篇):
PHP 近期熱門文章
PTT數位生活區 即時熱門文章