看板 PHP 關於我們 聯絡資訊
我目前有個A網頁要抓 可是那個網頁必須要登入才可以抓 所以我變成要去B網頁 login 後 在到a網頁去抓 現在問題來了 我用curl登入B網頁後 在去撈A網頁 她又顯示沒登入了 怎會這樣勒 程式碼 (上面的curl 可以大略看看就好 因為我有登入成功了 主要是最後面) 網頁版 程式碼 (http://dl.dropbox.com/u/3503352/new%20%205.txt) 應該會比較好讀 <?php $loginData = array( 'username' => '帳號', 'password' => '密碼' ); $structData= array( 'url' => 'http://www.plurk.com/m/login', 'postFields' => 'username='.urlencode($loginData['username']).'&password='.urlencode($loginData['password']), 'header' => 0, 'followLocation' => 1, 'cookiejar' => 'C:\coo.txt' ); // $ch = curl_init(); $options = array( CURLOPT_URL => $structData['url'], CURLOPT_POSTFIELDS => $structData['postFields'], CURLOPT_POST => 1, CURLOPT_HEADER => $structData['header'], CURLOPT_FOLLOWLOCATION => $structData['followLocation'], CURLOPT_SSL_VERIFYPEER => false, CURLOPT_COOKIEJAR => $structData['cookiejar'], CURLOPT_RETURNTRANSFER => $rr, CURLOPT_USERAGENT => "Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8.1.3) Gecko/20070309 Firefox/2.0.0.3" ); curl_setopt_array($ch, $options); $d = curl_exec($ch); if(curl_errno($ch) == 0) file_put_contents("data.txt", $d); // 產生 Cookie ,以便記住登入後的 Session curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); curl_setopt($ch, CURLOPT_COOKIEJAR, 'C:\cookie.txt'); curl_setopt($ch, CURLOPT_COOKIEFILE, 'C:\cookie.txt'); curl_setopt($ch, CURLOPT_COOKIE, 'C:\cookie.txt'); //----- 讀取網頁源始碼 $fp = file_get_contents("http://www.plurk.com/m/u/davidou123"); echo $fp; ?> -- 只有正妹的無名才有連結價值阿.. http://www.wretch.cc/blog/fancyou 非正妹 所以沒有連結價值 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 218.170.110.172 ※ 編輯: davidou 來自: 218.170.110.172 (06/05 00:58)
mp607:有現成的噗浪API可以用 06/05 00:58
mp607:http://www.plurk.com/API 06/05 00:59
davidou:樓上 我知道 我有寫好過了 只是想寫另一種的 06/05 01:00
mlwmlw:可以檢查看看 cookie 裡面有沒有資料 06/05 08:03
mlwmlw:CURLOPT_COOKIEJAR 的路徑 為什麼要不一樣 06/05 08:04
davidou:COOKIE 有資料 06/05 09:48
mlwmlw:沒注意看… 你要兩次都用 curl ,才會用到登入的 cookie 喔 06/05 11:49
mlwmlw:而且你這程式很怪 感覺拼湊出來的…流程不太對 06/05 11:50
hSATAC:file_get_contents 不吃你 curl的 cookie吧? 06/05 12:02
hSATAC:你第一個 file_get_contents 的用法也怪怪的 06/05 12:05
hSATAC:建議你全部用 curl 重寫 06/05 12:06
davidou:恩 沒錯 當時這只是拼湊出來的 所以沒吃到CURL的資料 06/05 22:34
davidou:後來用兩個CURL 就解決了 06/05 22:34