实现QQ机器人报警

如题,废话不说,直接上代码。首先是登录QQ的小脚本

#!/usr/bin/perl
use Webqq::Client;
use Data::Dumper;
use Digest::MD5 qw(md5_hex);
use LWP::UserAgent;
use JSON;

my $qq = QQ号;
my $pwd = md5_hex(‘QQ密码‘);

my $client = Webqq::Client->new(debug=>0);#等于1开启debug
#############验证码##############
$client->load("PostImgVerifycode");
$client->on_input_img_verifycode() = sub{
    my ($img_verifycode_file) = @_;
    my $smtp = {
        smtp    =>‘邮箱smtp服务器‘,
        user    =>‘邮箱user‘,
        pass    =>‘邮箱pass‘,
        from    =>‘邮箱地址‘,
        to      =>‘邮箱地址‘,
        from_title => ‘QQ机器人‘,
        subject => ‘验证码‘,
    };

    return &{$client->plugin("PostImgVerifycode")}($client,$img_verifycode_file,$smtp);
};
######################################
登录QQ的时候可能会用到验证码,需要的话会以邮件的形式发送到邮箱,打开邮件里边的链接地址提交即可。

$client->login( qq=> $qq, pwd => $pwd);

sub tuling{
    my $info = $_[0];
    my $UA = LWP::UserAgent->new;
    my $response = $UA->get(" #这里调用的事图灵机器人接口 实现了智能对话功能 用的话 自己去申请下地址 不用可以删掉该功能 
    my $str = $response->content;
    my $json = new JSON;
    my $json_obj = $json->decode("$str");
    return $json_obj->{‘text‘}
}

$client->on_receive_message = sub{
    	my $msg = shift;
	my $group_uin = $msg->{from_uin};
	if ($msg->{content} =~ m!(.*)@小傻(.*)!) {  #定义@什么内容会触发下边的回复这里定义的是@小傻 可以根据需要做更改
		my $msg_content = $1 . $2;
		my $s_msg_content = tuling("$msg_content");
		my $s_msg = $client->create_group_msg(to_uin=>"$group_uin", content=> "$s_msg_content",);
		$client->send_group_message($s_msg);
	}
};

$client->load("Openqq");
$client->on_run = sub{
	$client->call("Openqq",host=>"0.0.0.0",port=>5000);  ##这里是开启api,开启后本地会监听一个端口 通过该端口发送查询等一系列操作
};
$client->run();
##之后就是调用api发送qq消息的脚本啦 如下
#!/usr/bin/perl
use strict;
use warnings;
use LWP::UserAgent;
use JSON;
use URI::Escape;

sub get_gid {
    my $group_name = $_[0];
    my $UA = LWP::UserAgent->new;
    my $response = $UA->get(" #定义api地址  只需要替换ip
    my $str = $response->content;
    my $json = new JSON;
    my $json_obj = $json->decode("$str");
    foreach my $group (@{ $json_obj }){
		if ($group->{‘ginfo‘}->{‘name‘} eq "$group_name"){
				return $group->{‘ginfo‘}->{‘gid‘} ;
		}
	}
}

sub send_qq_mess {
    my $content = $_[0];
    my $gid = get_gid($_[1]);
    my $UA = LWP::UserAgent->new;
    my $response = $UA->get(" #定义api地址 只需要替换ip
    return $response->content;
}

my $c = uri_escape($ARGV[0]);
print send_qq_mess($c,"Monitoring_alarm") ;  # 这里的Monitoring_alarm是指要发送报警的群名称  必须是QQ所在的群

第一个脚本运行的话 加上nohup 否者验证码会丢tmp目录下 不会发邮件 QQ登录成功后 查看是否监听了5000端口(可改),一切ok了 执行第二个脚本 比如说名字是 send ,那么执行格式为send your_send_content 之后你刚才定义的群名称的那个群会收到消息 这个脚本因为有api可以任意调用,初学perl 大神别见笑。

最后感谢Webqq::Client模块的提供者。

时间: 2024-10-18 08:14:29

实现QQ机器人报警的相关文章

QQ 机器人源代码 之盗号

QQ 机器人源代码 之盗号: QQ机器人源代码_CrazyCoder_CN.rar 分析QQ协议具体数据包,最简单的办法,是Http接口下手,于是把我以前写的Ajax给拆了,在把所谓的qq接口研究成果给鼓捣在一起,然后去 Webqq(http://Webqq.qq.com)上大抢一遍,那家伙,天昏地暗,相当的&(&(. 代码我是用script写的: 异步Ajax会话类 1//异步Ajax会话类 2if(typeof(AjaxSession) == 'undefined') 3var Aja

python实现QQ机器人(自动登录,获取群消息,发送群消息)

一次偶然的机会我看见了一个群里的一个QQ号总是根据你所发的消息自动回复,当时很感觉到神奇,我知道可以模拟登录网站,没想到竟然也能模拟登录QQ,首先自己想到的就是如何实现模拟登录PC端的QQ, 开始研究了下,发现QQ所发送的包都很难理解. 于是就转到了网页版的QQ,因为在网页里可以捕获所有的请求从而更好的实现模拟功能! 首先第一步就是打开网页版的qq,打开浏览器的开发者模式 这里可以监控所有的请求! 打开登录界面的的时候 会捕捉到一个GET请求 https://ssl.ptlogin2.qq.co

QQ机器人

一.介绍 qqbot 是一个用 python 实现的.基于腾讯 SmartQQ 协议的 QQ 机器人,可运行在 Linux . Windows 和 Mac OSX 平台下. 本项目 github 地址: https://github.com/pandolia/qqbot 你可以通过扩展 qqbot 来实现: 监控.收集 QQ 消息 自动消息推送 聊天机器人 通过 QQ 远程控制你的设备 二.安装方法 在 Python 2.7/3.4+ 下使用,用 pip 安装: pip install qqbo

Python3实现QQ机器人自动爬取百度文库的搜索结果并发送给好友(主要是爬虫)

一.效果如下: 二.运行环境: win10系统:python3:PyCharm 三.QQ机器人用的是qqbot模块 用pip安装命令是: pip install qqbot (前提需要有requests库) 实现自己的机器人:网上好几种写法,很简单,不过有时候环境不同会出现错误,下面是亲测可以运行的: from qqbot import QQBotSlot as qqbotslot, RunBot @qqbotslot def onQQMessage(bot, contact, member,

利用Python的几行代码开发一个QQ机器人!小白也能快速上手的案例

本篇教大家如何用Python来实现QQ机器人,如有不足欢迎在评论方指出! 简单介绍 安装方法 可在 Python个版本下使用,用 pip 安装: pip install qqbot 使用方法 一.启动 QQBot 二.操作 QQBot QQBot 启动后,在另一个控制台窗口使用 qq 命令来操作 QQBot ,目前提供以下命令: list 命令提供强大的联系人查询功能,例如: 如: qq list group 机器人测试 例如: 实现我们自己的 QQ 机器人 要实现咱们自己的QQ 机器人超级简单

在手机端安装简易QQ机器人(需要ROOT)Python版

最简单的QQ机器人,不用的安卓手机可以完美的设置一个QQ机器人24小时在线.实现自动回复功能,问答等等.例如:你:你好  机器人:你好,我是QQ机器人. 还可以自己设置对应的回复!还有好多功能可以自己用python代码编写,非常简单!(来自网络收集) 安卓版本5.0以上 首先安装环境: 安卓手机需要安装: APP:Termux 地址:百度一下直接安装即可 官网:https://termux.com/ APP:ES文件浏览器 地址:百度一下直接安装即可, 然后设置一下.打开设置,显示设置,显示隐藏

第一讲 从头开始做一个web qq 机器人,第一步获取smart qq二维码

新手教程: 前言:最近在看了一下很久很久以前做的qq机器人失效了,最近也在换工作目前还在职,时间很挺宽裕的.就决定从新搞一个web qq机器人 PC的协议解析出来有点费时间以后再做. 准备工作: 编译工具:vs2017 编程语言:C# 或者.net 开始建一个SDK  新建文件 -项目 -选择类库-(WEBQQSDK)-添加一个类 smartqq 第一步,登录了一下Smart QQ,以这个HTTP协议,做机器人交互吧,TX把这个版本的很多功能去掉了,基本的群聊,私聊 收发信息之类还在.(用谷歌浏

10分钟教你拥有可编程QQ机器人

10分钟教你拥有可编程QQ机器人 --酷Q Air教程 --BY dudujerry 要想阅读本篇教程,读者需要基本的C++知识以及Visual Studio 2010/2015/2017 首先,需要从官方网站下载软件 https://cqp.cc/t/23253 .下载后从"下载"/"Download"文件夹中找到其压缩包.解压. 然后,我们从Github中下载酷Q的SDK. https://github.com/CoolQ/cqsdk-vc 解压发现.sln,是

zabbix实现QQ邮件报警通知(最详细)--技术流ken

前言 前几天搜了下网上使用zabbix邮件报警通知的文章,大多数还是使用mailx的方法,过程配置起来比较冗余繁琐,这几天想着把自己平时用到的qq邮件报警的方法分享出来供大家参考,以此减少不必要的步骤. zabbix监控端添加客户端 关于如何实现添加主机这里就不再赘述,相信大家对于这个已经很熟练了,大家也可以参考我的博客<分布式系统监视zabbix讲解一之zabbix安装--技术流ken> 第一步:添加监控主机 无需添加模版,我们来自定义监控项 第二步:添加监控点 点击你添加的监控项,创建一个