0

0

天天AV - 微信公众平台 - 实例

PHP中文网

PHP中文网

发布时间:2016-05-25 17:06:22

|

7107人浏览过

|

来源于php中文网

原创

如何部署自己的公众平台: 
    1.打开http://mp.weixin.qq.com 注册/登录 
    2.进入高级功能菜单,选择编辑模式或开发者模式(本例子属于开发者模式-需要自己拥有服务器) 
    3.进入开发者模式,注册成为开发者,配置接口信息。如: 
        url:http://192.168.1.1/wx_sample.php 
        token:weixin (自己填写一个) 
    4.打开wx_sample.php    $wechatobj->valid(); 这个方法进行验证 
    5.验证成功,关闭wx_sample.php    $wechatobj->valid(); 
    6.马上使用手机,访问属于自己的公众平台吧 


本例代码测试方法: 
    1.打开手机微信 
    2.关注公众账号:天天av 
    3.发送一条信息:q北京遇上西雅图 
    4.返回一条磁力链接 
    5.系统返回的是迅雷磁力链接,请您使用电脑版迅雷或手机版迅雷,进行下载观看 

原理: 

    1.接收用户数据,如:q北京遇上西雅图 

    2.到bt搜索引擎进行查询数据 

    3.返回一条磁力链接 

    ps:由于没有申请到内测资格,有很多功能都受到限制,如:5秒超时解决不了, 

    无法主动推送,批量推送,模拟登录又不方便等等。。。 

valid();//第一次验证token时使用
$wechatObj->responseMsg();
 
class wechatCallbackapiTest
{
    private $keyword;
     
    public function valid()
    {
        $echoStr = $_GET["echostr"];
 
        //valid signature , option
        if($this->checkSignature()){
            echo $echoStr;
            exit;
        }
    }
     
    public function responseMsg()
    {
        //get post data, May be due to the different environments
        $postStr = $GLOBALS["HTTP_RAW_POST_DATA"];
 
        //extract post data
        if (!empty($postStr)){
                 
                $postObj = simplexml_load_string($postStr, 'SimpleXMLElement', LIBXML_NOCDATA);
                $fromUsername = $postObj->FromUserName;
                $toUsername = $postObj->ToUserName;
                $this->keyword = trim($postObj->Content);
                $time = time();
                $textTpl = "
                            
                            
                            %s
                            
                            
                            0
                            ";             
                if(!empty( $this->keyword ))
                {
                    if($this->keyword == 999){
                        $msgType = "text";
                        $contentStr = '当您搜索:q北京遇上西雅图,系统返回的是迅雷磁力链接,请您使用电脑版迅雷或手机版迅雷,进行下载观看。';//'参数:1, 按下载数查询;参数:2, 按时间查询;参数:5, 按质量查询; 精确查询请添加双引号; 例如: q"北京遇上西雅图"  1';
                        echo $resultStr = sprintf($textTpl, $fromUsername, $toUsername, $time, $msgType, $contentStr);
                        exit;
                    }
                    preg_match('#^q(.*)#', $this->keyword, $str);
                    if($str[1]){
                        $data = $this->getQueryParam($str[1]);
                        $contents = $this->getQueryList($data);
                        $resutl = $this->getQueryResult($contents);
                        $link = str_replace('&','&',urldecode($resutl[1]));//组装磁力链接
                        if($link){
                            $msgType = "text";
                            $contentStr = $link;
                            echo $resultStr = sprintf($textTpl, $fromUsername, $toUsername, $time, $msgType, $contentStr);
                        }
                    }else{
                        $msgType = "text";
                        $contentStr = '请您输入q进行查询,例如: q北京遇上西雅图     更多帮助请输入999';
                        echo $resultStr = sprintf($textTpl, $fromUsername, $toUsername, $time, $msgType, $contentStr);
                    }
                }else{
                    echo "Input something...";
                }
 
        }else {
            echo "";
            exit;
        }
         
    }
         
    private function checkSignature()
    {
        $signature = $_GET["signature"];
        $timestamp = $_GET["timestamp"];
        $nonce = $_GET["nonce"];    
                 
        $token = TOKEN;
        $tmpArr = array($token, $timestamp, $nonce);
        sort($tmpArr);
        $tmpStr = implode( $tmpArr );
        $tmpStr = sha1( $tmpStr );
         
        if( $tmpStr == $signature ){
            return true;
        }else{
            return false;
        }
    }
     
    //返回q=查询
    function getQueryResult($contents){
        $result = array();
        preg_match('#\[magnet-link\]#iUs', $contents, $content);
        $result = $content;
        return $result;
    }
     
     
    //获取btdigg.org 的查询数据
    function getQueryList($data){
        $data['order'] = $data['order'] ? $data['order'] : 0;
        $data['p'] = 0;
        $ch = curl_init();
 
        curl_setopt($ch, CURLOPT_URL, 'https://btdigg.org/search?'.http_build_query($data));
        curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
        curl_setopt($ch, CURLOPT_USERAGENT, 'Google Bot');
        curl_setopt($ch, CURLOPT_TIMEOUT, 4);
        curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
        curl_setopt($ch, CURLOPT_FRESH_CONNECT, true);
         
        $result = curl_exec($ch);
        curl_close($ch);
        return $result;
    }
 
    //获取查询参数
    function getQueryParam($str){
        $data = array();
        $string = explode(' ', $str);
         
        //是数组 and 最后一个数组是数字
        $last = array_pop($string);
        if(is_numeric($last)){
            $data['q'] = implode(' ', $string);
            $data['order'] = $last;
        }else{
            $data['q'] = $str;
        }
        return $data;
    }
     
}
 
?>
微信app下载
微信app下载

微信是一款手机通信软件,支持通过手机网络发送语音短信、视频、图片和文字。微信可以单聊及群聊,还能根据地理位置找到附近的人,带给大家全新的移动沟通体验,有需要的小伙伴快来保存下载体验吧!

下载

本站声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

相关专题

更多
mc.js网页版入口地址大全
mc.js网页版入口地址大全

本专题整合了mc.js网页版入口地址大全以及mc.js1.8.8版本汇总,阅读专题下面的文章了解更多详细内容。

0

2026.01.05

Python lambda详解
Python lambda详解

本专题整合了Python lambda函数相关教程,阅读下面的文章了解更多详细内容。

0

2026.01.05

python处理大数据合集
python处理大数据合集

本专题整合了python处理大数据相关教程,阅读专题下面的文章了解更多详细内容。

0

2026.01.05

大数据专业学习教程
大数据专业学习教程

本专题整合了大数据专业学习相关教程,阅读专题下面的文章了解更多详细内容。

0

2026.01.05

python设置中文版教程合集
python设置中文版教程合集

本专题整合了python改成中文版相关教程,阅读专题下面的文章了解更多详细内容。

1

2026.01.05

从零到实战:Python 编程系统入门专题
从零到实战:Python 编程系统入门专题

本专题面向零编程基础及初学者,系统讲解 Python 编程语言的核心知识与实战技巧。内容涵盖 Python 基础语法、数据结构、函数与模块、常用标准库、简单算法思维,以及真实应用场景下的小项目实战。通过循序渐进的学习路径,帮助读者快速建立编程思维,掌握 Python 在数据处理、自动化脚本及日常开发中的实际应用能力,为后续深入学习 Web 开发、数据分析或人工智能打下坚实基础。

10

2026.01.05

php代码编辑器入口汇总
php代码编辑器入口汇总

本文整理了主流PHP代码编辑器的官网入口及在线使用链接,阅读专题下面的文章了解更多详细内容。

51

2026.01.04

php代码编辑器地址汇总
php代码编辑器地址汇总

本文整理了主流PHP代码编辑器的官网入口及在线使用链接,阅读专题下面的文章了解更多详细内容。

0

2026.01.04

Excel制作交互图表的方法 Excel交互式的图表教程大全
Excel制作交互图表的方法 Excel交互式的图表教程大全

Excel交互式图表可通过四种方法实现:一、用切片器控制数据透视图;二、结合下拉列表与INDEX-MATCH动态引用;三、用选项按钮绑定图表系列;四、利用动态命名区域配合OFFSET函数。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

330

2026.01.04

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
PHP开发微信公众号平台从简到精
PHP开发微信公众号平台从简到精

共25课时 | 5.9万人学习

微信开发视频教程
微信开发视频教程

共24课时 | 5.3万人学习

关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号