php使用curl模拟登录后采集页面的例子
2015-01-24信息快讯网
php使用curl模拟登录后采集页面的例子,附带php curl模块的开启办法。
今天接到的功课是从一个网站获取商品库存,但是这个网站需要登录,我用fsockopen传递了整个header头都没用,只能求助于curl了。
附带说一下curl模块的开启办法:
(1)从php目录下拷贝:libeay32.dll,ssleay32.dll 到windows目录下。
(2)打开php.ini,查找“extension_dir = xxxxx”,确认后面的文件目录内有php_curl.dll文件。
(3)同样是php.ini,查找“extension=php_curl.dll”,确认它没有被注释(前面没有';')。
(4)重启apache,如果使用curl_init();语句出现错误提示,则说明没有安装成功。
$curl = curl_init(); $cookie_jar = tempnam('./tmp','cookie'); curl_setopt($curl, CURLOPT_URL,'http://b2b.bookuu.com/b2b_club/checkUser.jsp');//这里写上处理登录的界面 curl_setopt($curl, CURLOPT_POST, 1); $request = 'user=xxx&password=xxx'; curl_setopt($curl, CURLOPT_POSTFIELDS, $request);//传 递数据 curl_setopt($curl, CURLOPT_COOKIEJAR, $cookie_jar);// 把返回来的cookie信息保存在$cookie_jar文件中 curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);//设定返回 的数据是否自动显示 curl_setopt($curl, CURLOPT_HEADER, false);//设定是否显示头信 息 curl_setopt($curl, CURLOPT_NOBODY, false);//设定是否输出页面 内容 curl_exec($curl);//返回结果 curl_close($curl); //关闭$curl2 = curl_init(); curl_setopt($curl2, CURLOPT_URL, 'http://b2b.bookuu.com/search/b2b_zxsm_new.jsp');//登陆后要从哪个页面获取信息 curl_setopt($curl2, CURLOPT_HEADER, false); curl_setopt($curl2, CURLOPT_RETURNTRANSFER, 1); curl_setopt($curl2, CURLOPT_COOKIEFILE, $cookie_jar); $content = curl_exec($curl2);
Codeigniter中禁止A Database Error Occurred错误提示的方法
php 过滤英文标点符号及过滤中文标点符号代码
PHP读取RSS(Feed)简单实例
PHP使用Alexa API获取网站的Alexa排名例子
Codeigniter+PHPExcel实现导出数据到Excel文件
PHP 面向对象程序设计(oop)学习笔记 (四) - 异常处理类Exception
教你如何在CI框架中使用 .htaccess 隐藏url中index.php
PHP函数分享之curl方式取得数据、模拟登陆、POST数据
PHP解决URL中文GBK乱码问题的两种方法
PHP Curl出现403错误的解决办法
微信支付开发教程(一)微信支付URL配置
php中curl和file_get_content的区别
php中curl、fsocket、file_get_content三个函数的使用比较
PHP CURL获取返回值的方法
mac下安装nginx和php
在PHP上显示JFreechart画的统计图方法
php网站判断用户是否是手机访问的方法
php合并js请求的例子
php上传文件中文文件名乱码的解决方法
PHP防止跨域提交表单
php cURL和Rolling cURL并发方式比较
使用Curl进行抓取远程内容时url中文编码问题示例探讨
使用PHP curl模拟浏览器抓取网站信息
获取URL文件名后缀
PHP CURL CURLOPT参数说明(curl_setopt)
php中通过curl检测页面是否被百度收录