首页 >后端开发 >php教程 >求一个可用的socket实例

求一个可用的socket实例

WBOY
WBOY原创
2016-06-23 14:18:55939浏览

socket 实例

用file_get_contents获取远程文件,返回错误,连接不上。
网上有人说可以用socket。没用过啊,搜了一下都是你转我的我转你的,对于初次接触的人来说可操作性不强啊。
我现在的需求是写小偷程序,从别人的网站上拷内容。

那些介绍socket的文章都有提到“服务端程序”和“客户端程序”。
我有个不明白的地方:
服务端程序是放在哪儿的?被访问网站的服务器上吗? 那跟我应该没关系吧(不用写),我是不是只需要写客户端程序呢?

实例拜托硬编码  就以www.baidu.com为例子吧  感谢感谢!!

回复讨论(解决方案)

socket 不是分放在哪,而是监听一方为服务器端,请求连接一方为客户端

你如果只是要抓东西,socket对你来说太难了,没必要,用curl吧,搜索一下本版,相关帖子多的是

file_get_contents 不行吗,出了什么错。

file_get_contents 不行吗,出了什么错。

由于连接方在一段时间后没有正确答复或连接的主机没有反应,连接尝试失败

对方做了限制吧,尝试着用curl试试看。

socket 不是分放在哪,而是监听一方为服务器端,请求连接一方为客户端

你如果只是要抓东西,socket对你来说太难了,没必要,用curl吧,搜索一下本版,相关帖子多的是
要是能用也不用想socket的办法了



// 创建一个新cURL资源
$ch = curl_init();

// 设置URL和相应的选项
curl_setopt($ch, CURLOPT_URL, "http://bbs.csdn.net/topics/380240079");
curl_setopt($ch, CURLOPT_HEADER, 0);

// 抓取URL并把它传递给浏览器
var_dump(curl_exec($ch));

// 关闭cURL资源,并且释放系统资源
curl_close($ch);


换了n个链接,都返回false。   发给朋友试,他说他那边返回true    

不是可以吗,你那里不可以吗

不是可以吗,你那里不可以吗

这是我试的代码:

// 创建一个新cURL资源
$ch = curl_init();

// 设置URL和相应的选项
curl_setopt($ch, CURLOPT_URL, "http://bbs.csdn.net/topics/380240079");
curl_setopt($ch, CURLOPT_HEADER, 0);

// 抓取URL并把它传递给浏览器
var_dump(curl_exec($ch));

// 关闭cURL资源,并且释放系统资源
curl_close($ch);

不行。

兄弟帮忙试试看?

通过curl抓取网页。

用你的代码可以出来啊

用你的代码可以出来啊

昨天回家试可以。怪了

找到一个,试试:

function read_file($url){  $r=@file_get_contents($url);  if(!$r){    $ch = curl_init();       curl_setopt($ch, CURLOPT_URL, $url);            //设置访问的url地址       //curl_setopt($ch,CURLOPT_HEADER,1);            //是否显示头部信息       curl_setopt($ch, CURLOPT_TIMEOUT, 5);           //设置超时       curl_setopt($ch, CURLOPT_USERAGENT, _USERAGENT_);   //用户访问代理 User-Agent       curl_setopt($ch, CURLOPT_REFERER,_REFERER_);        //设置 referer       curl_setopt($ch,CURLOPT_FOLLOWLOCATION,1);      //跟踪301       curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);        //返回结果       $r = curl_exec($ch);    curl_close($ch);  }  return $r;   }

不行就表示你的 curl 扩展没有开启,不过连 file_get_contents 都不能访问 url 的话,curl 多半是不黑开启的

不行就表示你的 curl 扩展没有开启,不过连 file_get_contents 都不能访问 url 的话,curl 多半是不黑开启的
扩展开启了

我在公司试,不管用file_get_contents ,curl都不行。回家试可以。   不知道跟网络有没有关系?

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn