Windows平台PHP+IECapt实现网页批量截图并创建缩略图(2)
运行结果:

(图二)
四、执行批处理文件
可以通过php程序循环执行 批处理文件,但在运行当中会出现很多问题,这里手动直接批量打开上面刚创建好的批处理文件,考虑到带宽和cpu,最多不要超过20个,截图的速度大约3-5秒/张效果如图三:

(图三)
五、创建缩略图
生成缩略图的文件是create_image_img.php,其中包含生成缩略图的主要的一个类文件是image.class.php,两个文件的代码如下:
ceate_image_img.php代码:
<?php
mysql_connect("localhost","root","123456");
mysql_select_db("test");
if(!isset($_GET['ID'])){
$_GET['ID'] = 1;
}
if($_GET['ID']){
$sql = "select * from t_url id =".$_GET['ID'];
$query = mysql_query($sql);
$row = mysql_fetch_array($query);
echo "<span style='color:#CE0000;'>正在生成缩略图:</span>".$row['id']." ".$row['url']."<br><br>";
$url = $row['url'];
$url_md5 = md5($url);
$pictype = $row['pictype'];
$limit_time = 1; //创建 $limit_time日内创建的大图,天
$thumbnails_folder = 'img_tmp/'; //保存临时大图的目录,必须以/结束
$thumbnails_folder2 = 'img/'; //保存小图的目录,必须以/结束
$output_format = 'jpg';
$cached_filename = $thumbnails_folder.$url_md5.".".$output_format;
$to_filename = $thumbnails_folder2 .$url_md5.'.'.$output_format;
if((file_exists($cached_filename) || filemtime ($filename) + $limit_time*86400 > time())
&& !file_exists($to_filename)){
if (filesize($cached_filename) > 1024){ //字节,不能是空白图片
//创建缩略图
include("image.class.php");
$img = new Zubrag_image;
// get parameters
$img->image_type = 2; // 1 = GIF, 2 = JPG, 3 = PNG
$img->quality = 80;
$img->max_w = 90;
$img->max_h = 67;
$img->iscapt = ($pictype == 1) ? true : false; //此处用布尔型即可,数据库不可1.非比例缩略图2.按比例缩略
if($img->GenerateThumbFile($cached_filename, $to_filename)){
echo "<span style='color:#CE0000;'>成功创建缩略图:</span>".$row['id']." ".$row['url'];
}else{
echo "<span style='color:#0000CE;'>未能创建缩略图:</span>".$row['id']." ".$row['url'];
}
}
}
$sql = "select * from t_url id >".$_GET['ID']." and flag = 1 order by id asc limit 1";
$query = mysql_query($sql);
$row = mysql_fetch_array($query);
echo "<br><span style='color:#0000CE;'>准备生成缩略图:</span>".$row['id']." ".$row['url']."<br><br>";
if($row['id']){
echo "<script>window.location.href='create_image_img.php?ID=".$row['id']."';</script>";
}else{
$_GET['ID'] = "";
}
}
?>
内容版权声明:除非注明,否则皆为本站原创文章。
