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 相关文章推荐
Windows下安装Memcached的步骤说明
Apr 25 PHP
PHP 魔术函数使用说明
May 14 PHP
zen cart新进商品的随机排序修改方法
Sep 10 PHP
php中转义mysql语句的实现代码
Jun 24 PHP
php empty() 检查一个变量是否为空
Nov 10 PHP
php addslashes 利用递归实现使用反斜线引用字符串
Aug 05 PHP
微信公众平台开发实现2048游戏的方法
Apr 15 PHP
php文件系统处理方法小结
May 23 PHP
Yii2针对游客、用户防范规则和限制的解决方法分析
Oct 08 PHP
PHP simplexml_load_string()函数实例讲解
Feb 03 PHP
PHP使用HTML5 FormData对象提交表单操作示例
Jul 02 PHP
PHP7原生MySQL数据库操作实现代码
Jul 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
海贼王动画变成“真人”后,凯多神还原,雷利太帅了!
2020/04/09 日漫
配置PHP使之能同时支持GIF和JPEG
2006/10/09 PHP
做一个有下拉功能的留言版
2006/10/09 PHP
第八节--访问方式
2006/11/16 PHP
ThinkPHP实现动态包含文件的方法
2014/11/29 PHP
PHP安装GeoIP扩展根据IP获取地理位置及计算距离的方法
2016/07/01 PHP
广告代码静态化js通用函数
2007/05/09 Javascript
不用ajax实现点击文字即可编辑的方法
2007/12/16 Javascript
jquery实现瀑布流效果分享
2014/03/26 Javascript
深入理解JavaScript中为什么string可以拥有方法
2016/05/24 Javascript
jQuery validate插件功能与用法详解
2016/12/15 Javascript
JavaScript中清空数组的三种方式
2017/03/22 Javascript
node.js+jQuery实现用户登录注册AJAX交互
2017/04/28 jQuery
详解ElementUI之表单验证、数据绑定、路由跳转
2017/06/21 Javascript
响应式框架Bootstrap栅格系统的实例
2017/12/19 Javascript
vue实现计算器功能
2020/02/22 Javascript
vue中改变滚动条样式的方法
2020/03/03 Javascript
vue项目里面引用svg文件并给svg里面的元素赋值
2020/08/17 Javascript
解决vue项目本地启动时无法携带cookie的问题
2021/02/06 Vue.js
详解Python编程中对Monkey Patch猴子补丁开发方式的运用
2016/05/27 Python
Django框架实现逆向解析url的方法
2018/07/04 Python
python多进程使用及线程池的使用方法代码详解
2018/10/24 Python
实例讲解Python脚本成为Windows中运行的exe文件
2019/01/24 Python
python实现静态服务器
2019/09/05 Python
keras 特征图可视化实例(中间层)
2020/01/24 Python
PyTorch笔记之scatter()函数的使用
2020/02/12 Python
基于HTML5 的人脸识别活体认证的实现方法
2016/06/22 HTML / CSS
英国屋顶用品和材料超市:Roofing Supplies UK
2019/08/24 全球购物
总经理秘书的岗位职责
2013/12/27 职场文书
计算机专业毕业生自荐书
2014/06/02 职场文书
2014年学校安全工作总结
2014/11/13 职场文书
罚站检讨书
2015/01/29 职场文书
西安导游词
2015/02/12 职场文书
边城读书笔记
2015/06/29 职场文书
代码解析React中setState同步和异步问题
2021/06/03 Javascript
js前端设计模式优化50%表单校验代码示例
2022/06/21 Javascript