cURL范例(包括错误输出和详情输出)
2024-08-29 05:35:25
//1.初始化
$ch = curl_init();
//2.设置选项,包括URL
curl_setopt($ch, CURLOPT_URL, 'http://www.baidu.com');
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_HEADER, 0);
//3.执行并获取HTML文档内容
$output = curl_exec($ch);
//4.错误判断
if ($output === FALSE){
echo 'cURL Error:'.curl_error($ch);
}
//5.返回cURL执行过程中相关信息(方便调试和查错)
$info = curl_getinfo($ch);
curl_close($ch);
echo $output;
cURL基本设置项
if (is_callable('curl_init')){
//1、初始化创建一个新cURL句柄
$ch = curl_init(); //2、设置cURL相关选项
curl_setopt($ch, CRULOPT_URL, 'https://www.xlyhw.com');
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);//设置curl_exec()获取信息以字符流的形式返回 curl_setopt($ch, CURLOPT_REFERER, 'http://weibo.com/');//告诉www.xlyhw.com是weibo中的页面通过点击进入的 curl_setopt($ch, CURLOPT_HEADER, 1);//启用时会将头信息作为字符流输出
curl_setopt($ch, CURLOPT_NOBODY, true);//排除页面主题只返回头信息与CURLOPT_HEADER同时使用 curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);//跟随head头重定向去寻找页面
curl_setopt($ch, CURLOPT_MAXREDIRS, 5);//跟随重定向的次数为5次 $agent = 'Mozilla/5.0 (iPhone; CPU iPhone OS 5_1 like Mac OS X) AppleWebKit/534.46 (KHTML, like Gecko) Mobile/9B176 MicroMessenger/4.2.2';//echo $_SERVER[ 'HTTP_USER_AGENT' ]
curl_setopt($ch, CURLOPT_USERAGENT, $agent);//使用用户代理访问xlyhw curl_setopt($ch, CURLOPT_TIMEOUT, 30);//抓取页面的等待时间为30秒 $header_arr[] = 'Mime-version:1.0' ;
$header_arr[] = 'Content-type:text/html;charset=utf-8' ;
$header_arr[] = 'Accept-encoding:compress,gzip' ;
curl_setopt($ch, CURLOPT_HTTPHEADER, $header_arr);//向目标服务器传递头部信息 curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);//用户https //使用post向目标站提交数据
curl_setopt($ch, CURLOPT_POST, true);
$data = 'username=administrator&password=admin@admin.com';//定义post的数据字符串
curl_setopt($ch, CURLOPT_POSTFIELDS, $data); curl_setopt($ch, CURLOPT_PORT, '8080');//目标站的端口 //3、抓取URL的HTML内容
$output = curl_exec($ch); //4、关闭cURL句柄
curl_close($ch);
}else { }
利用curl获取网络图片
/**
* curl获取网络图片保存到本地
*/
$ch = curl_init();//初始化curl
$fp = fopen('a.png','wb');//打开文件
curl_setopt($ch,CURLOPT_URL,'http://www.xlyhw.com/home/images/logo.png');//图片url
curl_setopt($ch,CURLOPT_FILE,$fp);//把图片数据放进文件
curl_setopt($ch,CURLOPT_HEADER,0);//是否输出页面内容
curl_setopt($ch,CURLOPT_TIMEOUT,60);//执行的时间限制
curl_exec($ch);
$info = curl_getinfo($ch);
echo '<pre>';
print_r($info);
echo '</pre>';
curl_close($ch);
fclose($fp);
最新文章
- XML带多属性解析为一个实体类(利用反射)
- 学习android 官方文档
- MySQL数据库3 - MySQL常用数据类型
- angulaijs中的ng-upload-file与阿里云oss服务的结合,实现在浏览器端上传文件到阿里云(速度可以达到1.5M)
- 网易云课堂_程序设计入门-C语言_第五周:函数_2完数
- 前端知识点-JS相关知识点
- XML和JSON两种数据交换格式的比较
- Python[小甲鱼-002用Python设计第一个游戏]
- 作为前端Web开发者,这12个终端命令不可不会
- LDAP服务部署
- C语言结构体1.1
- linux下用户操作
- Hbase表结构模型
- WebSocket原理与实践(三)--解析数据帧
- android db 导入 手机 系统 目录 data/data/包名/databases
- sqlserver2014两台不同服务器上数据库同步
- nginx启动报错:Job for nginx.service failed. See &#39;systemctl status nginx.service&#39; and &#39;journalctl -xn&#39; fo
- 了解数据模型、以及MySQL使用的数据模型
- 大型网站系统与Java中间件实践读书笔记
- 腾讯云 COS 对象存储使用
热门文章
- SPOJ GSS系列(数据结构维护技巧入门)
- [Python Cookbook] Numpy Array Joint Methods: Append, Extend &; Concatenate
- 济南day1下午
- [功能集锦] 001 - java下载文件
- Java泛型总结---基本用法,类型限定,通配符,类型擦除
- 邁向IT專家成功之路的三十則鐵律 鐵律八:IT人學習之道-基礎功
- windows10系统下安装nginx的安装步骤
- IDEA Java/Scala混合项目maven打包
- Pro Android学习笔记(一三七):Home Screen Widgets(3):配置Activity
- python(3)- 循环语句:从最内层跳出多层循环