文档章节

curl 微信接口获取素材

o
 osc_odyg6b92
发布于 2018/07/13 16:01
字数 461
阅读 10
收藏 0

「深度学习福利」大神带你进阶工程师,立即查看>>>

curl常量设置
bool类型
CURLOPT_HEADER 是否显将头信息作为数据流输出 一般为FALSE
CURLOPT_POST 默认是GET 需要POST时设置TURE 启用时会变成post方式
CURLOPT_SSL_VERIFYPEER 禁用后禁止从服务端验证 做爬虫时一般禁用掉
CURLOPT_SSL_VERIFYHOST 禁用后禁止验证SSL 做爬虫时一般禁用掉
CURLOPT_RETURNTRANSFER 启用后返回返回执行结果 一般要true
int类型
CURLOPT_CONNECTTIMEOUT 发起链接是访问的时间 类似url访问网址等待的时间 一般是0 就是不限制
CURLOPT_INFILESIZE 设置上传文件大小限制 单位字节
CURLOPT_PORT 设置访问的端口 默认为80
CURLOPT_PROXYPORT 设置代理服务器访问的端口 默认为80
CURLOPT_TIMEOUT 设置最大访问时间 一般120 单位秒

CURLFILES文件类
name 待上传文件名称 必填
mime 文件mime类型 选填 会自动解析
postname 上传数据里面的文件名称 选填 会自动解析

API 类似于可远程访问的函数 有接受值和返回值
//获取微信图片
function get_photo($token,$logo)
{
$url = "https://api.weixin.qq.com/cgi-bin/media/uploadimg?access_token=$token";
$data = array('buffer' => '@'.$logo);
$ch = curl_init();
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, FALSE);
// curl_setopt ( $ch, CURLOPT_SAFE_UPLOAD, FALSE);
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_POST, true );
curl_setopt($ch, CURLOPT_POSTFIELDS, $data);
curl_setopt($ch, CURLOPT_HEADER, false);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$return_data = curl_exec($ch);
curl_close($ch);
$return_data = json_decode($return_data,true);
return $return_data['url'];
}
//通用curl
function curl_http($url, $params, $method = 'GET', $header = array(), $multi = false){
$opts = array(
CURLOPT_TIMEOUT => 30,
CURLOPT_RETURNTRANSFER => 1,
CURLOPT_SSL_VERIFYPEER => false,
CURLOPT_SSL_VERIFYHOST => false,
CURLOPT_HTTPHEADER => $header
);
/* 根据请求类型设置特定参数 */
switch(strtoupper($method)){
case 'GET':
$opts[CURLOPT_URL] = $url . '?' . http_build_query($params);
break;
case 'POST':
//判断是否传输文件
$params = $multi ? $params : http_build_query($params);
$opts[CURLOPT_URL] = $url;
$opts[CURLOPT_POST] = 1;
$opts[CURLOPT_POSTFIELDS] = $params;
break;
default:
throw new Exception('不支持的请求方式!');
}
/* 初始化并执行curl请求 */
$ch = curl_init();
curl_setopt_array($ch, $opts);
$data = curl_exec($ch);
$error = curl_error($ch);
curl_close($ch);
if($error) throw new Exception('请求发生错误:' . $error);
return $data;
}
o
粉丝 1
博文 500
码字总数 0
作品 0
私信 提问
加载中
请先登录后再评论。
opm-server-mirror

代码更新 2009-11-25: 加入反爬虫功能。直接Web访问服务器将跳转到Google。 使用方法 下载index.zip 解压index.zip得到index.php 将index.php传到支持php和cURL的国外服务器上 打开 http:/...

luosheng86
2013/01/29
1K
0
Hbase的Windows访问接口库--libhbase4win

libhbase4win是基于Thrift的Hbase的Windows访问接口库,开发工具使用VS2010,Hadoop版本为1.1.0,Hbase版本为0.94.0,thrift版本0.9.0,执行编译需要boost和thrift支持。...

张子良
2013/03/06
764
0
统一数据库访问接口--edbc

edbc 是 Emacs-Lisp Database Connectivity 的缩 写 ,是从 Emacs-CGI 项目中独立出来的一个子项目,为 Emacs Lisp 访问数据库提供简洁、统一的接口! 在其他语言(比如Java)中访问数据库,...

redraiment
2012/12/26
1.6K
0
C多线程网络库--xs

基于C多线程网络库,欢迎大家使用,例子在代码example目录下,以后我会再增加一些例子。 文档暂时没有,有问题请邮件我:-) 获取代码:https://github.com/xueguoliang/xs xs致力于1)多线程网...

薛国良
2013/05/01
4.4K
0
基于ExMobi的外卖系统全端开发实践

如今O2O模式已经进入高速发展阶段,这种模式带给人们的方便快捷不仅催生了各种团购业务,更使订餐、外卖这种传统行业得到了新生。 这不禁让笔者也蠢蠢欲动,尤其是现在企业内部很多时候为了方...

nandy007
2015/12/14
1.6K
11

没有更多内容

加载失败,请刷新页面

加载更多

SQL 语句大全

点击上方“掌上编程”,选择“置顶或者星标” 优质文章第一时间送达! 一、基础 「1、说明:创建数据库」 CREATE DATABASE database-name    「2、说明:删除数据库」 drop database ...

GeneralMa
昨天
0
0
山东创睦网络科技有限公司:使用Python爬取全球新冠肺炎疫情数据

使用Python爬取全球新冠肺炎疫情数据 导入所需库包 获取实时数据的url 正式编写程序 查看输出结果 导入所需库包 在获取数据之前,我们需要先安装好所需的包requests和pandas: 1.如果是使用p...

osc_qv1fwke0
37分钟前
14
0
如何1年获得别人3年的工作经验(深度好文)

最近有同学问我,为什么你的工作年限不长,技术却这么厉害,我笑了笑,啥也没说。 我不是不想回答,是不知道怎么回答。在他们的定位可能就是,每方面都懂一点,遇到问题能够快速解决,就是比...

zhang_rick
今天
1
0
新基建带动行业

什么是“新基建”? 什么是“新基建”? 根据央视发布的信息来看,其涵盖了5G基站建设、新能源汽车充电桩、大数据中心、人工智能、工业互联网,特高压,城际以及城轨交通,涉及了七大领域和相...

osc_anefoz50
38分钟前
16
0
怕入错行?这群技术人写了本“择业指南”

计算机专业好找工作吗?哪些方向是当前的主流和热门方向呢? 计算机专业的你是不是还在为职业发展纠结犹豫呢? 刚经历完高考选专业的你是不是还在迷茫徘徊呢? 那么福利来啦! 《软件技术职业...

阿里云云栖号
38分钟前
21
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部