Home >Backend Development >PHP Tutorial >求一个可用的socket实例

求一个可用的socket实例

WBOY
WBOYOriginal
2016-06-23 14:18:55940browse

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都不行。回家试可以。   不知道跟网络有没有关系?

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn