PHP生成网页快照 不用COM不用扩展.

yipeiwu_com6年前PHP代码库
代码
复制代码 代码如下:

<?php
$url = 'www.baidu.com'; //抓取百度
echo snapshot($url); //输出结果为图片地址
echo snapshot($url, './baidu.png'); //将图片保存至本地baidu.png, 输出内容图片大小
/**
* 生成网页快照
*
* @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 = '/zb_users/upload/202003/xgs4emibbpv.png';
if (!empty($path)) {
$data = file_get_contents($file);
return file_put_contents($path, $data);
}
return $file;
}
?>

相关文章

PHP简单实现模拟登陆功能示例

本文实例讲述了PHP简单实现模拟登陆功能。分享给大家供大家参考,具体如下: 在不考虑验证码的情况一下,php实现模拟登陆,网上给的办法一般是采用curl来模拟实现,但是curl实现的是服...

PHP封装的完整分页类示例

本文实例讲述了PHP封装的完整分页类。分享给大家供大家参考,具体如下: <?php class pageclass{ private $total; //总记...

PHP最新抖音视频解析接口源码

<?php function GetVideos($url) {     $ch = curl_init();...

PHP 取多维数组指定一列的函数

PHP中对多维数组特定列的提取,是个很常用的功能,有一个专用的函数array_column()用PHP内置的 array_column() 函数是最简单的方法,限制是PHP版本必须是5.5.0及以上版...

20个PHP常用类库小结

图表库 下面的类库可以让你很简的创建复杂的图表和图片。当然,它们需要GD库的支持。 pChart - 一个可以创建统计图的库。 Libchart - 这也是一个简...