php ,模擬,搜索引擎,訪問網頁時是否帶有一些相關參數下面我們就來模仿搜索引擎訪問網站吧。
<?php
function GetPage($url)
{
$buf=parse_url($url);
if($buf['scheme']=="http")//如果是URL
{
$host=$buf['host'];
$page=$buf['path'];
if(trim($buf['query'])!=="") $page.="?".trim($buf['query']);
$myHeader="GET $url HTTP/1.1rn";
$myHeader.="Host: $hostrn";
$myHeader.="Connection: closern";
$myHeader.="Accept: text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5rn";
$myHeader.="Accept-Language: zh-cn,zh;q=0.5rn";
$myHeader.="Accept-Charset: gb2312,utf-8;q=0.7,*;q=0.7rn";
$myHeader.="User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; zh-CN; rv:1.7.6) Gecko/20050226 Firefox/1.0.1 Web-Sniffer/1.0.20rn";
$myHeader.="Referer: http://$host/rnrn";
$server=$host;
$port=80;
$res="";
if(false!==($fp = @fsockopen ($server, $port, $errno, $errstr, 30)))
{
@fputs ($fp, $myHeader);
while (!@feof($fp)) $res.= @fgets ($fp, 1024);
@fclose ($fp);
}
else return false;
if(strlen($res)==0) return false;
return $res;
}
else//如果是本地文件
{
$fileName=$url;
if(false!==@file_exists($fileName))
{
if(false!==($buf=@implode("",file($fileName)))&&@strlen($buf)>0)
{
return $buf;
}
else return false;
}
else return false;
}
}
function GetContent($str,$x,$y){
$tem=strstr($str,$x);
return substr($tem,0, strpos($tem,$y));
}
?>