用php实现的获取网页中的图片并保存到本地的代码


Posted in PHP onJanuary 05, 2010
<?php 
header("Content-type:image/jpeg"); 
function read_url($str) 
{ 
$file=fopen($str,"r"); 
while(!feof($file)) 
{ 
$result.=fgets($file,9999); 
} 
fclose($file); 
return $result; } 
function save_img($str) 
{ 
$result=read_url($str); 
$result=str_replace("\"","",$result); 
$result=str_replace("\'","",$result); 
preg_match_all('/<img\ssrc=(http:\/\/.*?)(\s(.*?)>|>)/i',$result,$matches); 
foreach($matches[1] as $value) 
{ 
echo $value."<br>\n"; 
//GrabImage($value,$filename=""); 
} 
} 
// $url 是远程图片的完整URL地址,不能为空。 
// $filename 是可选变量: 如果为空,本地文件名将基于时间和日期 
// 自动生成. 
function GrabImage($url,$filename="") { 
if($url==""):return false;endif; 
$path="download/"; //指定存储文件夹 
//若文件不存在,则创建; 
if(!file_exists($path)){ 
mkdir($path); 
} 
if($filename=="") { 
$ext=strrchr($url,"."); 
if($ext!=".gif" && $ext!=".jpg"):return false;endif; 
$filename=$path.date("dMYHis").$ext; 
} 
ob_start(); 
readfile($url); 
$img = ob_get_contents(); 
ob_end_clean(); 
$size = strlen($img); 
$fp2=@fopen($filename, "a"); 
fwrite($fp2,$img); 
fclose($fp2); 
return $filename; 
} 
save_img("https://3water.com"); 
?>
PHP 相关文章推荐
PHP分页显示制作详细讲解
Dec 05 PHP
PHP下一个非常全面获取图象信息的函数
Nov 20 PHP
phpmyadmin config.inc.php配置示例
Aug 27 PHP
解决更换PHP5.4以上版本后Dedecms后台登录空白问题的方法
Oct 23 PHP
PHP生成各种常见验证码和Ajax验证过程
Jan 10 PHP
ECshop 迁移到 PHP7版本时遇到的兼容性问题
Feb 15 PHP
php 二维数组时间排序实现代码
Nov 19 PHP
php实现文件上传及头像预览功能
Jan 15 PHP
PHP批量删除jQuery操作
Jul 23 PHP
关于 Laravel Redis 多个进程同时取队列问题详解
Dec 25 PHP
PHP CURL中传递cookie的方法步骤
May 09 PHP
laravel实现查询最后执行的一条sql语句的方法
Oct 09 PHP
用PHP查询搜索引擎排名位置的代码
Jan 05 #PHP
PHP 批量更新网页内容实现代码
Jan 05 #PHP
PHP 存储文本换行实现方法
Jan 05 #PHP
PHP 将图片按创建时间进行分类存储的实现代码
Jan 05 #PHP
PHP 采集获取指定网址的内容
Jan 05 #PHP
php 无极分类(递归)实现代码
Jan 05 #PHP
php 文件上传代码(限制jpg文件)
Jan 05 #PHP
You might like
S900/ ETON E1-XM 收音机
2021/03/02 无线电
批量获取memcache值并按key的顺序返回的实现代码
2011/06/14 PHP
Ping服务的php实现方法,让网站快速被收录
2012/02/04 PHP
PHP+jQuery 注册模块的改进(三):更新到Smarty3.1
2014/10/14 PHP
PHP7常量数组用法分析
2016/09/26 PHP
PHP+JavaScript实现无刷新上传图片
2017/02/21 PHP
PHP实现webshell扫描文件木马的方法
2017/07/31 PHP
JQuery UI DatePicker中z-index默认为1的解决办法
2010/09/28 Javascript
js网页侧边随页面滚动广告效果实现
2011/04/14 Javascript
javascript动态添加样式(行内式/嵌入式/外链式等规则)
2013/06/24 Javascript
JQ获取动态加载的图片大小的正确方法分享
2013/11/08 Javascript
js 对小数加法精度处理示例说明
2013/12/27 Javascript
浅谈Sizzle的“编译原理”
2015/04/14 Javascript
JavaScript中的Promise使用详解
2015/06/24 Javascript
JavaScript判断手机号运营商是移动、联通、电信还是其他(代码简单)
2015/09/25 Javascript
JS+CSS实现的竖向简洁折叠菜单效果代码
2015/10/22 Javascript
jQuery实现的左右移动焦点图效果
2016/01/14 Javascript
微信小程序 定位到当前城市实现实例代码
2017/02/23 Javascript
Vue通过input筛选数据
2020/10/26 Javascript
jQuery插件DataTables分页开发心得体会
2017/08/22 jQuery
详解Js里的for…in和for…of的用法
2019/03/28 Javascript
python+requests+unittest API接口测试实例(详解)
2017/06/10 Python
python多进程实现文件下载传输功能
2018/07/28 Python
使用Python 自动生成 Word 文档的教程
2020/02/13 Python
python实现录屏功能(亲测好用)
2020/03/02 Python
python实现坦克大战
2020/04/24 Python
Keras保存模型并载入模型继续训练的实现
2021/02/20 Python
加拿大最大的箱包及旅游配件零售商:Bentley Leathers
2017/07/19 全球购物
在线吉他课程,学习如何弹吉他:Fender Play
2019/02/28 全球购物
经济职业学院毕业生自荐书
2014/03/17 职场文书
《春到梅花山》教学反思
2014/04/16 职场文书
国旗下演讲稿
2014/05/08 职场文书
根叔历年演讲稿
2014/05/20 职场文书
银行柜员求职自荐书
2014/06/18 职场文书
2014年营业员工作总结
2014/11/18 职场文书
2016年元旦寄语
2015/08/17 职场文书