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


Posted in PHP onFebruary 11, 2010

代码

<?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 = 'http://cache.ppt.cc/' . $file . 'src_' . $data . '.png'; 
if (!empty($path)) { 
$data = file_get_contents($file); 
return file_put_contents($path, $data); 
} 
return $file; 
} 
?>
PHP 相关文章推荐
一个典型的PHP分页实例代码分享
Jul 28 PHP
MySQL时间字段究竟使用INT还是DateTime的说明
Feb 27 PHP
php 生成唯一id的几种解决方法
Mar 08 PHP
php 批量替换程序的具体实现代码
Oct 04 PHP
浅谈php的优缺点
Jul 14 PHP
php实现爬取和分析知乎用户数据
Jan 26 PHP
php微信公众号开发(2)百度BAE搭建和数据库使用
Dec 15 PHP
PHP多进程通信-消息队列使用
Mar 08 PHP
PHP进阶学习之垃圾回收机制详解
Jun 18 PHP
laravel-admin 实现在指定的相册下添加照片
Oct 21 PHP
YII2框架中actions的作用与使用方法示例
Mar 13 PHP
ThinkPHP5框架中使用JWT的方法示例
Jun 03 PHP
检查url链接是否已经有参数的php代码 添加 ? 或 &amp;
Feb 09 #PHP
php 自写函数代码 获取关键字 去超链接
Feb 08 #PHP
PHP 手机归属地查询 api
Feb 08 #PHP
Memcache 在PHP中的使用技巧
Feb 08 #PHP
PHP Memcached应用实现代码
Feb 08 #PHP
两个开源的Php输出Excel文件类
Feb 08 #PHP
php 处理上百万条的数据库如何提高处理查询速度
Feb 08 #PHP
You might like
PHP导入Excel到MySQL的方法
2011/04/23 PHP
浅谈php安全性需要注意的几点事项
2014/07/17 PHP
JS获取父节点方法
2009/08/20 Javascript
jquery checkbox,radio是否选中的判断代码
2010/03/20 Javascript
js中parseFloat(参数1,参数2)定义和用法及注意事项
2013/01/27 Javascript
js确认删除对话框适用于a标签及submit
2014/07/10 Javascript
JavaScript数据结构与算法之栈详解
2015/03/12 Javascript
js实现防止被iframe的方法
2015/07/03 Javascript
基于JavaScript如何实现私有成员的语法特征及私有成员的实现方式
2015/10/28 Javascript
JavaScript代码实现左右上下自动晃动自动移动
2016/04/08 Javascript
canvas绘制七巧板
2017/02/03 Javascript
AngularJS constant和value区别详解
2017/02/28 Javascript
vue+vuex+axio从后台获取数据存入vuex实现组件之间共享数据
2017/04/22 Javascript
JavaScript编写棋盘覆盖代码详解
2017/08/28 Javascript
vue.js实现插入数值与表达式的方法分析
2018/07/06 Javascript
NodeJS实现自定义流的方法
2018/08/01 NodeJs
小程序分页实践之编写可复用分页组件
2019/07/18 Javascript
解决vue组件中click事件失效的问题
2019/11/09 Javascript
JS正则表达式验证密码强度
2020/03/18 Javascript
vue组件实现移动端九宫格转盘抽奖
2020/10/16 Javascript
Python创建日历实例
2014/08/21 Python
浅谈Python中的私有变量
2018/02/28 Python
Python实现按中文排序的方法示例
2018/04/25 Python
python 的topk算法实例
2020/04/02 Python
pytorch SENet实现案例
2020/06/24 Python
django跳转页面传参的实现
2020/09/17 Python
详解CSS3媒体查询响应式布局bootstrap 框架原理实战(推荐)
2020/11/16 HTML / CSS
Zavvi荷兰:英国大型音像制品和图书游戏零售商
2018/03/22 全球购物
小学德育工作经验交流材料
2014/05/22 职场文书
家长会欢迎标语
2014/06/24 职场文书
网络文明传播志愿者活动方案
2014/08/20 职场文书
公务员处分决定书
2015/06/25 职场文书
六五普法先进个人主要事迹材料
2015/11/03 职场文书
会议开幕致辞怎么写
2016/03/03 职场文书
调解协议书范本
2016/03/21 职场文书
Golang生成Excel文档的方法步骤
2021/06/09 Golang