首页 > php教程 > php手册 > 正文

php fsockopen函数发送post,get请求获得网页内容(反防采集)

WBOY
发布: 2016-06-13 11:17:42
原创
949 人浏览过

 

php教程 fsockopen函数发送post,get请求获得网页内容(反防采集)

$post =1;
$url = parse_url($url);
$host ='http://www.bkjia.com';
$path ='/';
$query ='?action=php100.com';
$port =80;
 
if($post) {
  $out = "post $path http/1.0rn";
  $out .= "accept: */*rn";
  //$out .= "referer: $boardurlrn";
  $out .= "accept-language: zh-cnrn";
  $out .= "content-type: application/x-www-form-urlencodedrn";
  $out .= "user-agent: $_server[http_user_agent]rn";
  $out .= "host: $hostrn";
  $out .= 'content-length: '.strlen($post)."rn";
  $out .= "connection: closern";
  $out .= "cache-control: no-cachern";
  $out .= "cookie: $cookiernrn";
  $out .= $post;
 } else {
  $out = "get $path http/1.0rn";
  $out .= "accept: */*rn";
  //$out .= "referer: $boardurlrn";
  $out .= "accept-language: zh-cnrn";
  $out .= "user-agent: $_server[http_user_agent]rn";
  $out .= "host: $hostrn";
  $out .= "connection: closern";
  $out .= "cookie: $cookiernrn";
 }
 $fp = @fsockopen(($ip ? $ip : $host), $port, $errno, $errstr, $timeout);
 if(!$fp)
 {
  return '';//note $errstr : $errno rn
 } else {
  return '成功访问';
 }
 /*
 fsockopen语法
 
 resource fsockopen ( string $hostname [, int $port = -1 [, int &$errno [, string &$errstr [, float $timeout = ini_get("default_socket_timeout") ]]]] )


 
 启动一个套接字连接到指定的主机的资源。
    php支持在互联网领域的目标和unix在所支持的套接字传输列表说明。所支持的传输列表也可以检索使用stream_get_transports()。
 
 该插座预设会被启用,阻塞模式。你可以切换到非阻塞模式使用stream_set_blocking()。
 
 如果上面实例看不懂,就来看个简的吧


*/

 

$fp = fsockopen("www.bkjia.com", 80, $errno, $errstr, 30);
 if (!$fp) {
  echo "$errstr ($errno)
n";
 } else {
  $out = "get / http/1.1rn";
  $out .= "host: www.bkjia.comrn";
  $out .= "connection: closernrn";
  fwrite($fp, $out);
  while (!feof($fp)) {
   echo fgets($fp, 128);
  }
  fclose($fp);
 }

来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
热门推荐
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责声明 Sitemap
PHP中文网:公益在线PHP培训,帮助PHP学习者快速成长!