PHP100精华:PHP生成网页快照

原创
2016-06-13 10:33:58 1552浏览

$url = www.baidu.com; //抓取百度
echo snapshot($url); //输出结果为图片地址
echo snapshot($url, ./baidu.png); //将图片保存至本地baidu.png, 输出内容图片大小

/**
* 生成网页快照
* Fr bkJia.com 论坛 xiaokai
* @param string $site 目标地址
* @param string $path 保存地址, 为空则不保存
* @param integer $dealy 延迟
* @return mixed 根据参数返回
*/
function snapshot($site, $path = , $dealy = 0)
{
$url = http://ppt.cc/yo2/catch.php;
$query = url= . $site . &delay= . $dealy . &rnd= . mt_rand(1, 9);
$ch = curl_init($url);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, $query);
curl_setopt($ch, CURLOPT_USERAGENT, $_SERVER[HTTP_USER_AGENT]);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$data = curl_exec($ch);
curl_close($ch);


if (strlen($data) != 32) {
exit(无效网址);
}


$file = $data{0} . / . $data{1} . / . $data{2} . /;
$file = http://cache.ppt.cc/ . $file . src_ . $data . .png;


if (!empty($path)) {
$data = file_get_contents($file);
return file_put_contents($path, $data);
}
return $file;
}

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