/**
* curl 抓取图片
* @param $url
* @return mixed
*/
public static function downLoadImage($url)
{
$header = array('Expect:');
$ch = curl_init();
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, 'GET');
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_BINARYTRANSFER,1);
curl_setopt($ch, CURLOPT_TIMEOUT, 10);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 10);
curl_setopt($ch, CURLOPT_HTTPHEADER, $header);
$img = curl_exec($ch);
curl_close ($ch); //$return_code = curl_getinfo ( $ch, CURLINFO_HTTP_CODE );
return $img;
}
foreach ($productData as $val) {
$serviceParams['model_id'] = $val['id'];
// 调用逻辑层
$qrcodeService->getQrcode($serviceParams);
// 接收逻辑层处理结果
if (!is_null($qrcodeService->getError())) {
return $this->setError($qrcodeService->getError());
}
$qrcode = CommonLib::downLoadImage($qrcodeService->_data);
//重试一次
if (!$qrcode) {
$qrcode = CommonLib::downLoadImage($qrcodeService->_data);
}
//重名重写
if (isset($name[$val['name']])) {
$name[$val['name']]++;
$val['name'] = $val['name'] . '(' . $name[$val['name']] . ')';
}
$name[$val['name']] = 0;
file_put_contents(iconv('utf-8', 'gbk', $dir . DIRECTORY_SEPARATOR . $val['name'] . '.png'), $qrcode);
}

curl 抓取图片的更多相关文章

  1. Phantomjs+Nodejs+Mysql数据抓取(2.抓取图片)

    概要 这篇博客是在上一篇博客Phantomjs+Nodejs+Mysql数据抓取(1.抓取数据) http://blog.csdn.net/jokerkon/article/details/50868 ...

  2. ffmpeg 从视频流中抓取图片

    从视频中不断抓取图片的基本流程:打开视频流地址->获取视频流packt->解码成图片帧->输出图片 一.初始化Ffmpeg void ffmpegInit(){ av_registe ...

  3. php curl抓取远程页面内容的代码

    使用php curl抓取远程页面内容的例子. 代码如下: <?php /** * php curl抓取远程网页内容 * edit by www.jbxue.com */ $curlPost = ...

  4. PHP使用CURL抓取网页

    CURL是一个非常强大的开源库,支持很多协议,包括HTTP.FTP.TELNET等,我们使用它来发送HTTP请求.它给我 们带来的好处是可以通过灵活的选项设置不同的HTTP协议参数,并且支持HTTPS ...

  5. python3用BeautifulSoup抓取图片地址

    # -*- coding:utf-8 -*- #python 2.7 #XiaoDeng #http://tieba.baidu.com/p/2460150866 #抓取图片地址 from bs4 i ...

  6. HttpClient(三)-- 抓取图片

    使用HttpClient抓取图片,先通过 entity.getContent() 获取输入流,然后 使用 common io 中的文件复制 方法 将图片专区到本地,代码如下: 1.需要依赖common ...

  7. PHP CURL 抓取失败 自己调试

    蛋疼的一下午,物理机win7旗舰版+APACHE2 ,CURL抓取一直成功. 虚拟机ubuntu+apache2一直抓取失败. 晚上,问个仁兄才知道,CURL可以调试: 参考这位兄台: 地址 curl ...

  8. (三)HttpClient 抓取图片

    第一节: HttpClient 抓取图片 这里pom.xml需要用到io输入输出: <dependency> <groupId>commons-io</groupId&g ...

  9. shell用curl抓取页面乱码,参考一下2方面(转)

    1.是用curl抓取的数据是用类似gzip压缩后的数据导致的乱码.乱码:curl www.1ting.com |more乱码:curl -H "Accept-Encoding: gzip&q ...

随机推荐

  1. 【Java】-NO.16.EBook.4.Java.1.010-【疯狂Java讲义第3版 李刚】- 异常

    1.0.0 Summary Tittle:[Java]-NO.16.EBook.4.Java.1.010-[疯狂Java讲义第3版 李刚]- 异常 Style:EBook Series:Java Si ...

  2. SQL 的约束

    说明:文章所有内容均截选自用户"实验楼包工头"发布在实验楼上的教程[MySQL 基础课程],想要详细的学习SQL,点击教程即可免费学习了:未经允许,禁止转载: 约束是一种限制,它通 ...

  3. sess.run() 中的fetches和feed_dict

    sess.run()由fetches和feed_dict组成 sess.run(fetches,feed_dict) sess.run是让fetches节点动起来,告诉tensorflow,想要此节点 ...

  4. 用于模型选择的AIC与BIC

    一.AIC(Akaike information Criterion)准则 二.BIC(Bayesian information Criterion)准则 参考文献: [1]AIC与BIC区别

  5. nodejs发送邮件

    这里我主要使用的是 nodemailer 这个插件 第一步 下载依赖 cnpm install nodemailer --save 第二步 建立email.js 'use strict'; const ...

  6. C\C++程序结束另外的进程

    WinExec("taskkill /f /im center_flextrbo.exe",SW_HIDE);

  7. Ajax-创建ajax

    UNSENT : 未发送,刚开始创建完成AJAX对象,默认的状态就是0 OPENED : 已打开,执行了xhr.open之后状态变为1 HEADERS_RECEIVED :响应头信息已经成功的返回并且 ...

  8. JavaScript 深入了解对象中的属性

    本篇主要介绍JS中对象的属性,包括:属性的分类.访问方式.检测属性.遍历属性以及属性特性等内容. 目录 1. 介绍:描述属性的命名方式.查找路径以及分类 2. 属性的访问方式:介绍'.'访问方式.'[ ...

  9. html5-section元素

    <!DOCTYPE html><html lang="en"><head>    <meta charset="UTF-8&qu ...

  10. Lua 判断表是否为空方法

    [1]判断表为空的方法 目前为止,Lua语言中判断table表是否为空有三种方式: (1)#table,当table为数组时直接返回table表的长度. (2)当table是字典时,返回table的长 ...