看板 PHP 關於我們 聯絡資訊
想請問版上先進,若是使用 curl 函數要抓取網頁資訊,但是最後結果卻是空的。 有可能是甚麼地方的問題呢?? 附上我的 code: $ch = curl_init(); curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); curl_setopt($ch, CURLOPT_URL, "www.yahoo.com.tw"); $output = curl_exec($ch); curl_close($ch); $fp = fopen("output.txt","w"); fputs($fp, $output); fclose($fp); 而 output.txt 的權限已開,但是都沒有任何資訊存入... 有先進能提供點方向嗎?? 謝謝 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 118.167.184.159 ※ 編輯: blackpork 來自: 118.167.184.159 (08/17 17:57)
kilfu0701:剛剛試了 網址換成 tw.yahoo.com 看看 08/17 18:26
LPH66:我不確定加上下面這行是否能解決 不過應該可以一試 08/17 20:57
LPH66:curl_setopt($ch,CURLOPT_FOLLOWLOCATION,true); 08/17 20:57
wzbird:如果你是在租的主機上的話, 有的主機這個函式不能用. 08/17 21:46
先感謝各位的回文,可是我將網址換成 tw.yahoo.com 後也一樣。新增 LPH66 大說的那 行也一樣...結果都是空的。而我也不是用租的主機,是自己用 VMWare 架的這樣有差別 嗎?? 另外,我直接 echo $output 也沒東西...XD 是不是用 curl 還要調整 php 那裡的參數 呢? ※ 編輯: blackpork 來自: 118.167.177.54 (08/17 23:40)
Fantasywind:看php有沒有開這個extension? 08/18 00:32
有開 curl 的 extension~
farmerlu:url 改成 "http://tw.yahoo.com/" ? 08/18 18:19
farmerlu:即把 url 前面加上 "http://", 結尾加上 "/" 08/18 18:20
加了之後結果一樣...~"~
arrack:var_dump($output) 搞不好是false.. 08/19 14:47
var_dump 出來的確是 false...不過這樣是代表甚麼意思呢?? ※ 編輯: blackpork 來自: 118.167.191.55 (08/19 22:48)
arrack:代表連線失敗,原因有很多種 08/20 02:20
blackpork:那就您所知,有哪些可能的原因呢?可否提示小弟我一下..XD 08/20 19:20
arrack:你先確定那台可以上網吧... 08/20 19:46
farmerlu:可以用 "telnet tw.yahoo.com 80" 測試是否能連到該 web 08/21 01:03
感謝大大!!我是豬...囧rz...還真的是沒對外連線 (艸)遮臉 ..後來有對外連線之後,將網址輸入成 farmerlu 大說的那種格式就可以正確地抓取到網頁了...感謝各位阿...QQ ※ 編輯: blackpork 來自: 118.167.187.13 (08/22 14:39)