学习使用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 相关文章推荐
用函数读出数据表内容放入二维数组
Oct 09 PHP
PHP中的正规表达式(二)
Oct 09 PHP
PHP 面向对象 PHP5 中的常量
May 05 PHP
PHP 面向对象程序设计(oop)学习笔记 (四) - 异常处理类Exception
Jun 12 PHP
PHP错误Cannot use object of type stdClass as array in错误的解决办法
Jun 12 PHP
php实现发送微信模板消息的方法
Mar 07 PHP
Laravel中获取路由参数Route Parameters的五种方法示例
Sep 29 PHP
strpos() 函数判断字符串中是否包含某字符串的方法
Jan 16 PHP
PHP中strtr与str_replace函数运行性能简单测试示例
Jun 22 PHP
安装docker和docker-compose实例详解
Jul 30 PHP
PHP设计模式之命令模式示例详解
Dec 20 PHP
关于PhpStorm设置点击编辑文件自动定位源文件的实现方式
Dec 30 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
咖啡知识大全
2021/03/03 新手入门
深思 PHP 数组遍历的差异(array_diff 的实现)
2008/03/23 PHP
php 模拟 asp.net webFrom 按钮提交事件的思路及代码
2013/12/02 PHP
php使用strtotime和date函数判断日期是否有效代码分享
2013/12/25 PHP
静态的动态续篇之来点XML
2006/12/23 Javascript
JS函数验证总结(方便js客户端输入验证)
2010/10/29 Javascript
jquery 读取页面load get post ajax 四种方式代码写法
2011/04/02 Javascript
JS实现简单的Canvas画图实例
2013/07/04 Javascript
showModelDialog弹出文件下载窗口的使用示例
2013/11/19 Javascript
jQuery简单实现QQ空间点赞已经取消点赞
2015/04/02 Javascript
vue.js中$set与数组更新方法
2018/03/08 Javascript
Webpack中loader打包各种文件的方法实例
2019/09/03 Javascript
vue进入页面时不在顶部,检测滚动返回顶部按钮问题及解决方法
2019/10/30 Javascript
利用JS如何获取form表单数据
2019/12/19 Javascript
Python sys.argv用法实例
2015/05/28 Python
python 字典(dict)按键和值排序
2016/06/28 Python
Python入门之三角函数atan2()函数详解
2017/11/08 Python
python并发编程之线程实例解析
2017/12/27 Python
详解Django中类视图使用装饰器的方式
2018/08/12 Python
检测python爬虫时是否代理ip伪装成功的方法
2019/07/12 Python
创建市级文明单位实施方案
2014/03/01 职场文书
田径运动会开幕式及主持词
2014/03/28 职场文书
小学生寒假家长评语
2014/04/16 职场文书
医院竞聘演讲稿
2014/05/16 职场文书
打架赔偿协议书范本
2014/10/26 职场文书
2014年医药代表工作总结
2014/11/22 职场文书
幼师辞职信怎么写
2015/02/27 职场文书
学校教师师德师风承诺书
2015/04/28 职场文书
大学生实习证明
2015/06/16 职场文书
爱国主义影片观后感
2015/06/18 职场文书
领导欢送会主持词
2015/07/06 职场文书
如何用JavaScript学习算法复杂度
2021/04/30 Javascript
梳理总结Python开发中需要摒弃的18个坏习惯
2022/01/22 Python
yolov5返回坐标的方法实例
2022/03/17 Python
如何让你的Nginx支持分布式追踪详解
2022/07/07 Servers
MySQL的表级锁,行级锁,排它锁和共享锁
2022/07/15 MySQL