比较文件是否被篡改,用md5校验。同理,比较图片是否已经存在,也可以这样验证。
从网上抓图片,直接用fopen、fputs得到的图片相当于“被篡改”过了。如果用curl,则会得到一模一样的图片,和点击图片右键保存的效果一样。
<?php
$pic = 'http://www.google.com.hk/intl/zh-CN/images/logo_cn.png';
//获取图片二进制流
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $pic);
curl_setopt($ch, CURLOPT_GET, 1);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 10);
curl_setopt($ch, CURLOPT_TIMEOUT, 30);
$imageData = curl_exec($ch);
curl_close($ch);
//保存图片
$tp = @fopen('demo.png', 'wb');
fwrite($tp, $imageData);
fclose($tp);
//比较原图与保存后的图片的md5值
$str1 = md5_file('logo_cn.png'); //事先手动保存下来
$str2 = md5_file('demo.png');
var_dump($str1 == $str2);
分享到:
相关推荐
一个完整的使用CURL抓取网页数据 使用stl string分析网页数据,将提取的数据输出到log.txt中
php curl模仿form表单提交图片或文件 用的tp5做的例子
qt5使用curl实现文件下载的示例程序,详细操作请参考博客http://blog.csdn.net/xueyushenzhou/article/details/51702672#t3
介绍一个php应用curl扩展抓取网页类,获取的信息以文件流的形式返回,而不是直接输出。正则方式抓取,抓取标题,抓取文章内容,获取抓取数据,最后进行一下测试。
go gin web框架文件上传,可以使用curl进行上传文件
windows下C++利用CURL进行上传下载图片功能代码,主要说明可查看压缩包内的ReadMe说明文档,供初学者借鉴使用
PHP使用CURL上传文件只需发送一个POST请求就可以了,在请求中设置某个字段为需要上传的文件全路径,并且以”@”开头,然后使用CURL把该变量以POST方式发送到服务器,在服务端即可以从超级全局变量$_FILES中取到相应...
抓取网页内容,分析网页数据经常使用php curl,简洁易用,本篇文章通过代码实例给大家讲解 php curl抓取网页的介绍和推广及使用CURL抓取淘宝页面集成方法,需要的朋友参考下
curl要用的lib文件,调用curl库时候需要该文件
本文实例讲述了PHP使用Curl实现模拟登录及抓取数据功能。分享给大家供大家参考,具体如下: 使用PHP的Curl扩展库可以模拟实现登录,并抓取一些需要用户账号登录以后才能查看的数据。具体实现的流程如下(个人总结)...
C++ 使用Curl实现Get下载zip文件、post上传zip文件、普通post请求获取json等
Linux下使用curl下载url文件,直接可用。包括文件夹检查创建,多线程文件下载。
服务器上传文件到ownCloud私有云,java调用curl上传,代码简单
php,curl抓取图片并且下载至本地,之后产生缩略图。
shell-curl小例子,md5加密,shell时间处理
在linux下(需要安装curl库),通过curl通过https协议,实现远程下载文件。测试时将宏定义中的地址和文件名修改为自己想要测试的即可。带有一定注释。
curl下载curl包下载
curl.exe
一个php应用curl扩展抓取网页类,获取的信息以文件流的形式返回,而不是直接输出。正则方式抓取,抓取标题,抓取文章内容,获取抓取数据,最后进行一下测试。