zoukankan      html  css  js  c++  java
  • perl qq 机器人

    t a1.pl 
    use Mojo::Webqq;
    use Mojo::Webqq::Friend;
    use Mojo::Util qw(md5_sum);
    use Encode;
    use Mojo::Webqq::Message::Recv::Message;
     
    #初始化一个客户端对象
    my $client=Mojo::Webqq->new(ua_debug=>0);
     
     my $qq = 267020090;
     my $pwd = "xxxxxxxxxxxx";
      
      my $pwd_md5 = md5_sum($pwd);#得到原始密码的32位长度md5
       
       #客户端进行登录
       $client->login(qq=>$qq,pwd=>$pwd_md5);
        
        #客户端加载ShowMsg插件,用于打印发送和接收的消息到终端
        $client->load("ShowMsg");
        
         #设置接收消息事件的回调函数,在回调函数中对消息以相同内容进行回复
         $client->on(receive_message=>sub{
             my ($client,$msg)=@_;
                 #已以相同内容回复接收到的消息
                 #$var group name
                      print "-----------------
    ";
                      eval{$friend=$msg->sender->nick;};
                      eval{$var=$msg->group->gname};
                      $var = encode("gbk",decode("utf8","$var")); 
                       
                      $frined=$msg->sender->nick;
    
                      $friend=encode("gbk",decode("utf8","$friend"));
                      $content=$msg->content;
                     #$content 消息内容
                     $content=encode("gbk",decode("utf8","$content"));
                      print $content ;
                      print $friend;
                     print "#################
    ";
                        
                if ( ($friend =~/悠悠球/i)   or ($var =~/道森/i) or ($friend =~/zjcap/i) or   ($var =~/oracle/i) )  {
                        print "come in
    ";
                        chomp($content);
                        print "$content is $content
    ";
                     if (($content =~/sb/i) or  ($content =~/2b/i) or ($content =~/大/i) or ($content =~/scan/i) or ($content =~/赵/i) or ($friend =~/落/i) or ($content =~/1/i))  {
                               if ($content =~/sb/){eval{$client->reply_message($msg,"you are really sb")}}
                               elsif ($content =~/2b/){eval{$client->reply_message($msg,"you are really 2b")}}
                               elsif ($content =~/赵/){eval{$client->reply_message($msg,"xiao li ya")}}
                                else{
                     eval{$client->reply_message($msg,$msg->content)}};
                         #你也可以使用$msg->dump() 来打印消息结构
                         }
                 }
    }
    
    );
                          
                          #客户端开始运行
                          $client-> run();

  • 相关阅读:
    淘宝Banner 轮播图
    JavaScript move简易版运动框架封装
    javaScript 导航栏
    JS 运动框架完整版
    Js 数组操作
    JS 动画轮播效果
    JavaScritpt 字符串操作
    Java AOP切面编程方式
    时间版 运动框架
    Nmon的安装及使用
  • 原文地址:https://www.cnblogs.com/hzcya1995/p/13351387.html
Copyright © 2011-2022 走看看