您的位置:首页 > 编程语言 > PHP开发

(网页抓取)一个用PHP实现的网页抓取的实例

2013-04-13 14:51 721 查看
PHP实现的网页抓取的实例
<?
$url = "http://www.lingjuli99.com/new.asp";
$contents = file_get_contents($url);
echo $contents;

$url = "http://www.lingjuli99.com/new.asp";
$ch = curl_init();
$timeout = 5;
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, $timeout);
//在需要用户检测的网页里需要增加下面两行
//curl_setopt($ch, CURLOPT_HTTPAUTH, CURLAUTH_ANY);
//curl_setopt($ch, CURLOPT_USERPWD, US_NAME.":".US_PWD);
$contents = curl_exec($ch);
curl_close($ch);
echo $contents;

$handle = fopen ("http://www.xxx.com/", "rb");
$contents = "";
do {
$data = fread($handle, 8192);
if (strlen($data) == 0) {
break;
}
$contents .= $data;
} while(true);
fclose ($handle);
echo $contents;

if(function_exists('fsockopen'))
{

$urlinfo = parse_url($url);
$host = $urlinfo['host'];
$str = explode($host, $url);
$uri = $str[1];
unset($urlinfo, $str);
$content = '';
$fp = fsockopen($host, 80, $errno, $errstr, 30);
if(!$fp)
{
$content = 'Can Not Open Socket...';
}
else
{
$out = "GET $uri   HTTP/1.1rn";
$out.= "Host: $host rn";
$out.= "Accept: */*rn";
$out.= "User-Agent: $_SERVER[HTTP_USER_AGENT]rn";
$out.= "Connection: Closernrn";
fputs($fp, $out);
while (!feof($fp))
{
$content .= fgets($fp, 4069);
}
fclose($fp);
}
}

$html = file_get_contents($url);
print_r($http_response_header);

$fp = fopen($url, 'r');
print_r(stream_get_meta_data($fp));
fclose($fp);

$zd = gzopen($filename, "r");
$contents = gzread($zd, filesize ($filename));
gzclose($zd);
file_put_contents($filename,$contents);
?>
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: