PHP培训 CURL模拟登录

  php教程本文简述的是curl模拟登录,今天小编直接把代码发出来分享给大家。但是,现在微信改版啦,登录公众号必须扫二维码认证。这篇代码,我还是依旧发出来,供大家参考使用!

  //模拟微信登入

  $cookie_file = tempnam(‘./temp‘,‘cookie‘);

  $login_url = ‘https://mp.weixin.qq.com/cgi-bin/login‘;

  $data = ‘f=json&imgcode=&pwd=ae4e792c8c289cc8e390c86c99ea249b&[email protected]‘;

  $ch = curl_init($login_url);

  curl_setopt($ch,CURLOPT_RETURNTRANSFER,true);

  curl_setopt($ch,CURLOPT_POST,1);

  curl_setopt($ch,CURLOPT_COOKIEJAR,$cookie_file);

  curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);

  curl_setopt($ch,CURLOPT_SSL_VERIFYHOST,false);

  curl_setopt($ch,CURLOPT_REFERER,‘https://mp.weixin.qq.com‘);

  curl_setopt($ch,CURLOPT_POSTFIELDS,$data);

  $content = curl_exec($ch);

  curl_close($ch);

  $newurl = json_decode($content,1);

  $newurl = $newurl[‘redirect_url‘];

  //获取登入后页面的源码

  $go_url = ‘https://mp.weixin.qq.com‘.$newurl;

  $ch = curl_init($go_url);

  curl_setopt($ch,CURLOPT_RETURNTRANSFER,true);

  curl_setopt($ch,CURLOPT_COOKIEFILE,$cookie_file);

  curl_setopt($ch,CURLOPT_CONNECTTIMEOUT,0);

  curl_setopt($ch, CURLOPT_HEADER, 0);

  curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);

  $content = curl_exec($ch);

  //var_dump(curl_error($ch));

  print_r($content);

  curl_close($ch);

  ?>

时间: 2024-08-09 18:18:52

PHP培训 CURL模拟登录的相关文章

测试开发Python培训:模拟登录新浪微博-技术篇

测试开发Python培训:模拟登录新浪微博-技术篇 一般一个初学者项目的起点就是登陆功能的自动化,而面临的项目不同实现的技术难度是不一样的,poptest在做测试开发培训中更加关注技术难点,掌握技术实现思路,提高动手能力.这里通过大家都能接触到的系统新浪微博,作为案例. 模拟登录功能比较简单,很多人在学习自动化的时候都会以登陆来作为自己的第一个学习案例,有点像开发语言中第一段代码都是helloworld!一样.登陆简单的模拟登录,直接发post请求就OK,很容易实现. 这里用新浪微博,就是技术实

cURL模拟登录教学管理系统

最近在开发微信公众平台,想实现通过微信查询课表的功能.无奈本人业务不精,之前对微信公众平台不是很了解,甚至对PHP都不是很熟练.所以一直不知道怎么解决,在网上查阅了很多资料,收货不是很大,不过至少把原理弄懂了.其实原理很简单,就是利用php的cURL模拟登录技术. cURL是一个利用URL语法规定来传输文件和数据的工具,支持很多协议,如HTTP.FTP.TELNET等.最爽的是,PHP也支持 cURL 库.在PHP中建立cURL请求的基本步骤: 1.初始化 2.设置变量 3.执行并获取结果 4.

linux curl模拟登录网页

有时在批量抓取网站页面内容时,是需要处于登录状态的,否则无法获取.curl这个强大的工具可以完成这个工作.之前最好也先了解一下http POST方法,网站登录大都是用这个办法. 本文基本上参考这篇文章,来自依云's Blog,是archlinux中文论坛的百合仙子大大写的,他参考的gihub上一个百度网盘资源进行访问的小程序.我只是根据理解改了几个小地方,转载请注明出处 以百度为例 先保存用户变量 $ ACCOUNT=百度帐号 $ PASS=帐号的密码 第一步 访问百度,取得cookie,保存到

PHP通过CURL模拟登录并获取数据

<?php/*通过CURL模拟登录并获取数据 一些网站需要权限认证,必须登录网站后,才能有效地抓取网页并采集内容, 这就需要curl来设置cookie完成模拟登录网页,php的curl在抓取网页内容方 面效率是比较高的,而且支持多线程,而file_get_contents()效率就要稍低 些.模拟登录的代码如下所示:*/ function login_post($url, $cookie, $post){ $ch = curl_init(); //初始化curl模块 curl_setopt($c

curl 模拟登录微信公众平台带验证码

这段时间一直写个项目, 从切图到前端到后台都要搞定,真tm累. 今天下午手残,不停用错误的密码去模拟登录微信公众平台,结果后来出现验证码,瞬间悲剧(菜鸟从来没搞过带验证码的). 研究了一下,发现其实很简单,直接把生成的二维码图片拉过来,让用户自己输入,再提交一遍表单即可.其实中间还是有些坑,比如生成验证码的时候,要把cookie保存下,登录的时候要带上这个cookie,要不然会总是提示需要验证码. 客户端: 1 <body> 2 <form> 3 <p><inpu

PHP Curl模拟登录并抓取数据

使用PHP的Curl扩展库可以模拟实现登录,并抓取一些需要用户账号登录以后才能查看的数据.具体实现的流程如下(个人总结): 1. 首先需要对相应的登录页面的html源代码进行分析,获得一些必要的信息: (1)登录页面的地址: (2)验证码的地址: (3)登录表单需要提交的各个字段的名称和提交方式: (4)登录表单提交的地址: (5)另外要需要知道要抓取的数据所在的地址. 2. 获取cookie并存储(针对使用cookie文件的网站): $login_url = 'http://www.xxxxx

curl模拟登录,并发测试

开发各种软件或系统都需要进行压力测试等,近来有一个后台web系统新需要进行测试,怎么才能很方便的测试呢,curl就ok了. curl是linux/unix下很强大的命令,全称 command url,web测试中最重要的应该算是维持session,而客户端实现的方式是使用cookie. curl参数介绍: --data post方式参数 -L 自动重定向 -c 将cookies保存到文件 -b 将cookie一起发送至服务端 下面看一下具体的操作: 模拟登陆: 1 curl -L -c cook

php使用curl模拟登录带验证码的网站

需求是这样的,需要登录带验证码的网站,获取数据,但是不可能人为一直去记录数据,想通过自动采集的方式进行,如下是试验出来的结果代码!有需要的可以参考下! <?php namespace Home\Controller; use Think\Controller; class LoginController extends Controller { protected $cookieName = array('cookie_verify', 'cookie_verify'); protected $

php小代码----curl模拟登录及登录后并通过多线程进行重复post数据提交

<?php function getRequestCookie($webHomePageUrl, $cookieFileName) {     //初始化一个curl会话     $curl = curl_init();     $options = array(         CURLOPT_URL => $webHomePageUrl, //设置请求的url         CURLOPT_HTTPGET => 1, //以get方式请求         CURLOPT_COOKI