学习使用curl采集curl使用方法


Posted in PHP onJanuary 11, 2012
<?php 
$cookie_jar = tempnam('./tmp','cookie'); 
$ch = curl_init(); 
curl_setopt($ch, CURLOPT_URL,'登陆地址'); 
curl_setopt($ch, CURLOPT_POST, 1); 
$request = 'username=xxx&pwd=xxx'; 
curl_setopt($ch, CURLOPT_POSTFIELDS, $request);//传递数据 
curl_setopt($ch, CURLOPT_COOKIEJAR, $cookie_jar);//把返回来的cookie信息保存在$cookie_jar文件中 
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);//设定返回的数据是否自动显示 
curl_setopt($ch, CURLOPT_HEADER, false);//设定是否显示头信息 
curl_setopt($ch, CURLOPT_NOBODY, false);//设定是否输出页面内容 
curl_exec($ch); 
curl_close($ch); //get data after login $ch2 = curl_init(); 
curl_setopt($ch2, CURLOPT_URL, '查看地址'); 
curl_setopt($ch2, CURLOPT_HEADER, false); 
curl_setopt($ch2, CURLOPT_RETURNTRANSFER, 1); 
curl_setopt($ch2, CURLOPT_COOKIEFILE, $cookie_jar); 
$orders = curl_exec($ch2); 
echo $orders; 
curl_close($ch2);// 实践证明很稳定:) 
?>

先在本机测试,在php.ini中去掉了extension=php_curl.dll前面的;,查看一下phpinfo(),并没有curl。
查了下文档,
Note to Win32 Users: In order to enable this module on a Windows environment, libeay32.dll and ssleay32.dll must be present in your PATH.

将libeay32.dll 和ssleay32.dll复制到system32下,重启apache,刷新phpinfo(),看到了curl。
引用
cURL support enabled 
cURL Information libcurl/7.16.0 OpenSSL/0.9.8d zlib/1.2.3

本机测试顺利通过,再去服务器上测试。原没装curl,只好重新编译php。
在原编译参数后面加了--with-curl=/usr/local/curl。
我这次的配置是:
./configure '--prefix=/usr/local/php5' '--with-apxs2=/usr/local/apache2/bin/apxs' '--with-mysql=/usr/local/mysql' '--with-gd=/usr/local/gd' '--with-zlib' '--with-png' '--with-jpeg-dir=/usr/local/jpeg' '--with-freetype-dir=/usr/local/freetype' '--enable-sockets' '--with-iconv' '--enable-mbstring' '--enable-track-vars' '--enable-force-cgi-redirect' '--with-config-file-path=/usr/local/php5/etc' --with-curl=/usr/local/curl

很快OK。phpinfo显示
引用
CURL support enabled 
CURL Information libcurl/7.12.1 OpenSSL/0.9.7a zlib/1.2.3 libidn/0.5.6

感觉挺好用的:)
PHP 相关文章推荐
使用PHP制作新闻系统的思路
Oct 09 PHP
php压缩多个CSS为一个css的代码并缓存
Apr 21 PHP
php 模拟get_headers函数的代码示例
Apr 27 PHP
php二维数组排序与默认自然排序的方法介绍
Apr 27 PHP
如何在Ubuntu下启动Apache的Rewrite功能
Jul 05 PHP
获取URL文件名后缀
Oct 24 PHP
Thinkphp实现MySQL读写分离操作示例
Jun 25 PHP
Symfony2实现在controller中获取url的方法
Mar 18 PHP
PHP基于关联数组20行代码搞定约瑟夫问题示例
Nov 07 PHP
作为PHP程序员你要知道的另外一种日志
Jul 30 PHP
PHP实现的支付宝支付功能示例
Mar 26 PHP
Laravel如何同时连接多个数据库详解
Aug 13 PHP
PHP 日,周,月点击排行统计
Jan 11 #PHP
php删除页面记录 同时刷新页面 删除条件用GET方式获得
Jan 10 #PHP
PHP求小于1000的所有水仙花数的代码
Jan 10 #PHP
php 带逗号千位符数字的处理方法
Jan 10 #PHP
php mysql 判断update之后是否更新了的方法
Jan 10 #PHP
用PHP实现小写金额转换大写金额的代码(精确到分)
Jan 10 #PHP
解决文件名解压后乱码的问题 将文件名进行转码的代码
Jan 10 #PHP
You might like
如何跨站抓取别的站点的页面的补充
2006/10/09 PHP
PHP 魔术函数使用说明
2010/05/14 PHP
PHP 将逗号、空格、回车分隔的字符串转换为数组的函数
2012/06/07 PHP
php往mysql中批量插入数据实例教程
2018/12/12 PHP
PHP关于foreach复制知识点总结
2019/01/28 PHP
在Windows上安装Node.js模块的方法
2011/09/25 Javascript
javascript:void(0)是什么意思示例介绍
2013/11/17 Javascript
jquery实现鼠标点击后展开列表内容的导航栏效果
2015/09/14 Javascript
JavaScript与jQuery实现的闪烁输入效果
2016/02/18 Javascript
原生JS和jQuery版实现文件上传功能
2016/04/18 Javascript
详解vue组件化开发-vuex状态管理库
2017/04/10 Javascript
Angularjs 实现动态添加控件功能
2017/05/25 Javascript
JS表单提交验证、input(type=number) 去三角 刷新验证码
2017/06/21 Javascript
基于JavaScript实现报警器提示音效果
2017/10/27 Javascript
JS动画定时器知识总结
2018/03/23 Javascript
js序列化和反序列化的使用讲解
2019/01/19 Javascript
详解使用WebPack搭建React开发环境
2019/08/06 Javascript
[02:42]DOTA2城市挑战赛收官在即 四强之争风起云涌
2018/06/05 DOTA
Python中optparse模块使用浅析
2015/01/01 Python
在Django中创建动态视图的教程
2015/07/15 Python
Python数据类型学习笔记
2016/01/13 Python
利用python实现数据分析
2017/01/11 Python
python使用pdfminer解析pdf文件的方法示例
2018/12/20 Python
django rest framework 实现用户登录认证详解
2019/07/29 Python
CSS3模拟动画下拉菜单效果
2017/04/12 HTML / CSS
adidas爱尔兰官方网站:阿迪达斯运动鞋和运动服
2019/11/01 全球购物
COSETTE官网:奢华,每天
2020/03/22 全球购物
Otiumberg官网:英国半精致珠宝品牌
2021/01/16 全球购物
《自选商场》教学反思
2014/02/14 职场文书
上课打牌的检讨书
2014/02/15 职场文书
坚定理想信念心得体会
2014/03/11 职场文书
卖车协议书范例
2014/09/16 职场文书
Python基础之元类详解
2021/04/29 Python
springboot中的pom文件 project报错问题
2022/01/18 Java/Android
SpringBoot集成MongoDB实现文件上传的步骤
2022/04/18 MongoDB
vue el-table实现递归嵌套的示例代码
2022/08/14 Vue.js