作者blackpork (黑猪肉)
看板PHP
标题[请益] php curl 抓取网页
时间Wed Aug 17 17:53:14 2011
想请问版上先进,若是使用 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)
1F:→ kilfu0701:刚刚试了 网址换成 tw.yahoo.com 看看 08/17 18:26
2F:推 LPH66:我不确定加上下面这行是否能解决 不过应该可以一试 08/17 20:57
3F:→ LPH66:curl_setopt($ch,CURLOPT_FOLLOWLOCATION,true); 08/17 20:57
4F:推 wzbird:如果你是在租的主机上的话, 有的主机这个函式不能用. 08/17 21:46
先感谢各位的回文,可是我将网址换成 tw.yahoo.com 後也一样。新增 LPH66 大说的那
行也一样...结果都是空的。而我也不是用租的主机,是自己用 VMWare 架的这样有差别
吗??
另外,我直接 echo $output 也没东西...XD 是不是用 curl 还要调整 php 那里的参数
呢?
※ 编辑: blackpork 来自: 118.167.177.54 (08/17 23:40)
5F:推 Fantasywind:看php有没有开这个extension? 08/18 00:32
有开 curl 的 extension~
7F:→ farmerlu:即把 url 前面加上 "http://", 结尾加上 "/" 08/18 18:20
加了之後结果一样...~"~
8F:→ arrack:var_dump($output) 搞不好是false.. 08/19 14:47
var_dump 出来的确是 false...不过这样是代表甚麽意思呢??
※ 编辑: blackpork 来自: 118.167.191.55 (08/19 22:48)
9F:→ arrack:代表连线失败,原因有很多种 08/20 02:20
10F:→ blackpork:那就您所知,有哪些可能的原因呢?可否提示小弟我一下..XD 08/20 19:20
11F:→ arrack:你先确定那台可以上网吧... 08/20 19:46
12F:→ farmerlu:可以用 "telnet tw.yahoo.com 80" 测试是否能连到该 web 08/21 01:03
感谢大大!!我是猪...囧rz...还真的是没对外连线 (艹)遮脸 ..後来有对外连线之後,将网址输入成
farmerlu 大说的那种格式就可以正确地抓取到网页了...感谢各位阿...QQ
※ 编辑: blackpork 来自: 118.167.187.13 (08/22 14:39)