PHP模拟QQ登录的方法

yipeiwu_com7年前PHP代码库

本文实例讲述了PHP模拟QQ登录的方法。分享给大家供大家参考。具体实现方法如下:

原理是用curl模拟发送post登录,cookie保存本地

这样理论上可以支持永久单挂QQ

<?php 
//http://blog.qita.in 非技术[S.T]
$qqno='你的QQ';
$qqpw='QQ密码';
$cookie = dirname(__FILE__).'/cookie.txt';
$post = array(
  'login_url' => 'http://pt.3g.qq.com/s?sid=ATAll43N7ZULRQ5V8zdfojol&aid=nLogin',
  'q_from' => '',
  'loginTitle' => 'login',
  'bid' => '0',
  'qq' => $qqno,
  'pwd' => $qqpw,
  'loginType' => '1',
  'loginsubmit' => 'login',
);
$curl = curl_init('http://pt.3g.qq.com/handleLogin?aid=nLoginHandle&sid=ATAll43N7ZULRQ5V8zdfojol');
curl_setopt($curl, CURLOPT_HEADER, 0);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($curl, CURLOPT_COOKIEJAR, $cookie); // ?Cookie
curl_setopt($curl, CURLOPT_POST, 1);
curl_setopt($curl, CURLOPT_POSTFIELDS, http_build_query($post));
$result = curl_exec($curl);
curl_close($curl);
?>

希望本文所述对大家的php程序设计有所帮助。

相关文章

Laravel中log无法写入问题的解决

前言 账号登录报500错误,也没有返回错误信息,没办法只能使用原始方法,到现在一行一行打印。到 Log::info() 后面就无法正常显示了,那么问题就找到了。 导致无法写入日志的问题,...

PHP中检查isset()和!empty()函数的必要性

isset()函数是PHP中的内置函数,它检查变量是否已设置且不为NULL。此函数还检查声明的变量,数组或数组键是否具有空值,如果是,isset()返回false,它在所有其他可能的情况...

PHP实现的分页类定义与用法示例

PHP实现的分页类定义与用法示例

本文实例讲述了PHP实现的分页类定义与用法。分享给大家供大家参考,具体如下: <?php class Page { private $total; /...

php获取随机数组列表的方法

php获取随机数组列表的方法

本文实例讲述了php获取数组中随机数组的实例程序,分享给大家供大家参考。具体实现方法如下: 不用多说,直接贴代码,php中的array_rand很变态,突破了正常人的理解,非常繁琐 例1...

php调用nginx的mod_zip模块打包ZIP文件

php 本身有 zip 模块,可以生产 zip 文件。但是这个 zip 模块只能使用本地文件来打包。如果需要打包输出的文件来自网络,就得先保存临时文件。在文件数量多或者文件大的时候就很杯...