php中CURL实现模拟登录并采集数据
这里要说一些,默认情况下,PHP的CURL功能是没有开启的,所以你要自己去开启这个功能,需要在php.ini中把 ;extension= php_curl.dll 前面的 " ; " 号去掉!!!
好,我讲讲昨天晚上的程序吧,虽然最后没有成功,但是还是学习到一些东西的。
| 代码如下 | 复制代码 |
|
$login="http://www.phpyu.com/index.php?action=login"; |
|
/////创建一个具有唯一文件名的临时文件。 若成功,则该函数返回新的临时文件名。若失败,则返回 false。
| 代码如下 | 复制代码 |
|
$ch=curl_init($login_url); /////初始化一个CURL对象 |
|
//如果你想把一个头包含在输出中,设置这个选项为一个非零值。
| 代码如下 | 复制代码 |
|
curl_setopt($ch,CURLOPT_RETURNTRANSFER,1); ///设置不输出在浏览器上 |
|
/////如果你想PHP去做一个正规的HTTP POST,设置这个选 项为一个非零值。这个POST是普通的 application/x-www-from-urlencoded 类型,多数被HTML表单使用。
| 代码如下 | 复制代码 |
|
curl_setopt($ch,CURLOPT_POSTFIELDS,$post_file); ////传递一个作为HTTP "POST"操作的所有数据的字符串。 |
|
上面已经完成了模拟登录的过程
下面要做的就是进入具有权限的页面了,要记得你现在已经登录了,你应该把登录的凭证cookie保存了起来。
| 代码如下 | 复制代码 |
|
$url="http://www.phpyu.com/admin/××"; |
|
////把这个页面显示在浏览器上,这里要特别注意!!就是如果把它显示在浏览器上的时候 下面的$contents 就会变成 一个布尔类型 true
| 代码如下 | 复制代码 |
|
curl_setopt($ch, CURLOPT_COOKIEFILE, $cookie_file); |
|
例2
| 代码如下 | 复制代码 |
|
<?php //-----登录要提交的表单数据--------------- $ch = curl_init(); echo ' |
|
注:如果遇到无法请求https站点的情况,可能是因为无法验证证书或者域名,只要在curl_setopt_array前增加以下两项就可以了:
| 代码如下 | 复制代码 |
|
$params[CURLOPT_SSL_VERIFYPEER] = false; $params[CURLOPT_SSL_VERIFYHOST] = false; |
|
php中CURL实现模拟登录并采集数据的更多相关文章
- PHP cURL实现模拟登录与采集使用方法详解教程
来源:http://www.zjmainstay.cn/php-curl 本文将通过案例,整合浏览器工具与PHP程序,教你如何让数据 唾手可得 . 对于做过数据采集的人来说,cURL一定不会陌生.虽然 ...
- php中CURL技术模拟登陆抓取数据实战,抓取某校教务处学生成绩。
这两天有基友要php中curl抓取教务处成绩的源码,用于微信公众平台的开发.下面笔者只好忍痛割爱了.php中CURL技术模拟登陆抓取数据实战,抓取沈阳工学院教务处学生成绩. 首先,教务处登录需要验证码 ...
- [PHP自动化-进阶]001.CURL模拟登录并采集数据
引言:PHP可以通过libcurl实现模拟登录,提交数据,违法乱纪,烧杀抢虐等等事项. 简单说明一下"libcurl",补一下脑: libcurl目前支持http.https.ft ...
- curl怎么模拟登录进行采集
前几天公司需要模拟登录,从网上找了一下代码,结合谷歌浏览器,进行模拟账号密码进行登录 用谷歌浏览器进行抓包操作,获得登录用参数, 下面上干货: <?php /** * 主要获取登录成功的cook ...
- PHP cURL应用实现模拟登录与采集使用方法详解
对于做过数据采集的人来说,cURL一定不会陌生.虽然在PHP中有file_get_contents函数可以获取远程链接的数据,但是它的可控制性太差了,对于各种复杂情况的采集情景,file_get_co ...
- PHP中使用CURL模拟登录并获取数据实例
cURL 是一个功能强大的PHP库,使用PHP的cURL库可以简单和有效地抓取网页并采集内容,设置cookie完成模拟登录网页,curl提供了丰富的函数,开发者可以从PHP手册中获取更多关于cURL信 ...
- PHP中CURL技术模拟登陆抓取网站信息,用与微信公众平台成绩查询
伴随微信的红火,微信公众平台成为许多开发者的下一个目标.笔者本身对于这种新鲜事物没有如此多的吸引力.但是最近有朋友帮忙开发微信公众平台中一个成绩查询的功能.于是便在空余时间研究了一番. 主要的实现步骤 ...
- 使用CURL进行模拟登录
在信息采集的时候,要采集的站点可能需要登录,这样使用简单的采集方式(例如file_get_contents)就无法做到了,我们可以利用PHP的CURL扩展库来进行模拟登录,下面给出代码示例: < ...
- PHP模拟登录并获取数据
cURL 是一个功能强大的PHP库,使用PHP的cURL库可以简单和有效地抓取网页并采集内容,设置cookie完成模拟登录网页,curl提供了丰富的函数,开发者可以从PHP手册中获取更多关于cURL信 ...
随机推荐
- Linq读取XML
var customerList = ( from e in XDocument.Load("customers.xml"). Root.Elements("custom ...
- source insight增加注释宏
打开base项目,下main.c文件里加入以下代码 对于在一行内的局部注释, 没有找到解除注释的宏, macro Comments_orUn_gx() { //用杠星注释多行,或取消杠星注释 ,不选中 ...
- Objective-C数据保存和读取
一.NSCoding协议中的Archiving和Unarchiving (1)Archiving一个object,会记录这个对象的所有的properties到filesystem: (2)Unarch ...
- CentOS 7.2 安装配置Samba服务器
1背景 转Linux刚刚1年,vim操作还不能应对工程代码,之前一直都是Gnome桌面 + Clion 作开发环境,无奈在服务器上没有这样的环境, 看同事是(Windows)Source Insigh ...
- 阿里云docker镜像加速
echo "DOCKER_OPTS=\"--registry-mirror=https://yeyieqis.mirror.aliyuncs.com\"" | ...
- visio取消自动粘附
有时候画直线的时候需要直线摆在任意位置,这个时候自动粘附就很碍事了,总是自动把你的直线给摆到粘附的特殊位置上 如何取消: 视图->视觉帮助(点右下角的小箭头)->当前活动的->取消勾 ...
- ADC 转换序列暂时难理解
通常情况下,core文件会包含了程序运行时的内存,寄存器状态,堆栈指针,内存管理信息还有各种函数调用堆栈信息等,我们可以理解为是程序工作当前状态存储生成第一个文件,程序出错的时候理论上都会产生一个co ...
- oracle 9i相关问题
Oracle 9i在连接数据库的时候需要加上双引号,如sqlplus “sys/oracle@orcl as sysdba” Oracle 9i不支持bigfile大的表空间创建,oracle9i或以 ...
- JavaScript基本操作
一.如何编写? 1.JavaScript代码存在形式 <!-- 方式一 --> <script type="text/javascript" src=" ...
- PHP自带防SQL攻击函数区别
为了防止SQL注入攻击,PHP自带一个功能可以对输入的字符串进行处理,可以在较底层对输入进行安全上的初步处理,也即Magic Quotes.(php.ini magic_quotes_gpc).如果m ...