Python搭建QQ机器人,监控QQ发言与进群退群,自动@新成员并屏蔽脏话踢人

目录

前言

原理

准备

        go-cqhttp插件安装

        nonebot框架的安装

插件的拓展

效果

警告 


前言

        emmmm,大家好,我叫善念。有点懒 好久没有给大家更新教程了。今天给大家带来的项目比较有趣,而且非常简单,简称 有手即可!

        很多人应该都经历过,当你进入一些Python学习交流群的时候突然来了一封邮件,或者一些进群的自动@机器人。今天咱们要实现的就是这些相关功能!

        讲句心里话,我写的一些文章有些无法过审都烂在仓库里(几个小时白费),本身都是想要大家学习参考,包括我的文章内容都非常详细,大家也是有目共睹的。

        非常恳求你们的一键三连

原理

        利用go-cqhttp插件获取咱们的QQ相关数据,包括截取咱们的各类聊天(聊天信息)、信息事件(进群退群之类的)。然后利用nonebot框架来反向截取go-cqhttp截留到的数据,使我们能够利用到这些信息事件。

        是不是一脸懵逼了。其实没有大家想象的复杂,简而言之就是利用go-cqhttp插件在cmd中打印出登陆的QQ账号的事件,然后用nonebot框架来反向截取go-cqhttp截留到的数据,供我们在pycharm中用代码去利用这些事件。

        比如go-cqhttp插件截留到的数据:

     nonebot框架来反向截取go-cqhttp截留到的数据:

        为什么不让你们去细究而是我直接通俗的讲下使用的方法呢,因为我觉得如果你让我讲解里面的一些真正底层原理,我自己也没这个本事,但是我可以教你如何简单的使用。

准备

        go-cqhttp插件安装

                进入官网

                        

              根据自己的操作系统去下载相对应的版本:

如果你下载的是zip软件包,那么它应该是这样的:

双击exe文件后 全部点是的, 会生成一个.bat文件 

 双击.bat文件后选择反向websocket连接的方式。

它会生成一个config配置文件,暂且不管它。但是它非常重要! 

重新打开.bat文件,

登陆你的账号,首次登陆一般为扫码登陆,里面的登陆协议好像是随机的ipad或者手表之类的。

登陆后会生成session文件与device文件,分别保存了咱们的账户信息(cookis)与登陆的设备信息。

此时,咱们已经成功了一半,已经实现了在cmd中打印出截留到的数据,剩下的就是如何对接Python把这些数据弄到咱们的pycharm(你也可以使用其它的IDE)中去。

        nonebot框架的安装

                       进入官网

         

        可以看到一个很关键的地方,Python解释器的版本必须为3.7以及以上版本。简单的pip安装模块即可。

        如果你是这样做的,那么就做错了,咱们的nonebot已经出到v2版本了,这个是v1的很多功能都残缺了。

        所以请进入到v2版本官网

        怎么安装模块就不多讲了,有手就行。

        然后就是看文档咯,我这里就直接教大家怎么简单的使用了。首先创建一个目录结构。

        如我所创:

        我标记的两个文件,咱们暂时可以不用。就很简单的一个目录结构了,plugins下面的文件为我们的功能插件,我们想要实现的功能都写在这个里面,比如进群@,或者别的功能。

         bot.py为咱们的主程序,启动主程序后调用咱们的插件即可:

import nonebot
from nonebot.adapters.cqhttp import Bot as CQHTTPBot
from nonebot import on_notice
from nonebot.typing import T_State
from nonebot.adapters import Bot, Event
from nonebot.adapters.cqhttp.message import Message
from nonebot.adapters.cqhttp import GroupIncreaseNoticeEvent,GroupDecreaseNoticeEvent
nonebot.init()
driver = nonebot.get_driver()


driver.register_adapter("cqhttp", CQHTTPBot)
# nonebot.load_builtin_plugins()
nonebot.load_plugin("awesome_bot.plugins.squer")
app = nonebot.get_asgi()

if __name__ == "__main__":
    nonebot.run(host='127.0.0.1', port=28655)

        像我这里就是调用了squer插件,这里值得注意的是我写了一句

nonebot.run(host='127.0.0.1', port=28655)

        表明机器人的地址运行在这里,那么我们是如何实现go-cqhttp与nonebot连接起来的呢?当然这个ip与端口都要对应才能连接起来咯,所以我们的config.yml文件就要利用起来了,修改里面的参数:

         这样子咱们就实现了基本的功能了。

插件的拓展

        关键插件的编写千变万化,相对应的API我建议看官方文档,比如我写的就是一个进群或者退群直接发邮件的插件:

from nonebot import on_notice
from nonebot.typing import T_State
from nonebot.adapters import Bot, Event
from nonebot.adapters.cqhttp.message import Message
from nonebot.adapters.cqhttp import GroupIncreaseNoticeEvent,GroupDecreaseNoticeEvent
import requests
# -*- coding: utf-8 -*-
import tkinter as tk
from tkinter import *
from tkinter import ttk
from PIL import ImageTk
import webbrowser
import os
import win32ui
import requests
import time
import threading
from queue import Queue
from tkinter import messagebox
import uuid
import windnd
import random
import string
from requests_toolbelt import MultipartEncoder
welcom = on_notice()

@welcom.handle()
async def welcome(bot: Bot, event: GroupIncreaseNoticeEvent, state: T_State):
    user = event.get_user_id()
    yx = str(user+'@qq.com').strip()
    print(yx)
    sendmail(yx)

效果

警告 

        切勿用于任何非法用途,仅供学习参考。除学习意外的用途切勿联系我,关键插件的邮件部分请自行编写。

相关推荐

老年人都看懂了,Python 中的线程和进程精讲,已经收藏

目录线程和进程一、 什么是进程 / 线程1、 引论众所周知,CPU是计算机的核心,它承担了所有的计算任务。而操作系统是计算机的管理者,是一个大管家,它负责任务的调度,资源的分配和管理,统领整个计算机硬件。应用程序是具有某种功能的程序,程序运行与操作系统之上2、 线程在很早的时候计算机并没有线程这个概念,但是随着时代的发展,只用进程来处理程序出现很多的不足。如当一个进程堵塞时,整个程序会停止在堵塞处,并且如果频繁的切换进程,会浪费系统资源。所以线程出现了线程是能拥有资源和独立运行的

落伍的码农 1357

如何让你的Python程序,定时定点地去执行任务?

apscheduler 的使用  我们项目中总是避免不了要使用一些定时任务,比如说最近的项目,用户点击报名考试以后需要在考试日期临近的时候推送小程序消息提醒到客户微信上,翻了翻 fastapi 中的实现,虽然方法和包也不少,但是要不就是太重了(比如需要再开服务,还要依赖 redis,都不好用),虽然也可以使用 time 模块的 time.sleep()机上 fastapi 的后台任务变相实现,但是相对简单的功能还行,复杂点的代码起来就麻烦了,所以还是专人专事找个负责这个额的包吧。找来找去发现 APSch

落伍的码农 2829

关于Python的Selenium框架全解,一篇完整的说明书

目录selenium 基础语法一、 环境配置1、 安装环境干货主要有:2、 配置参数3、 常用参数搭配4、 分浏览器启动二、 基本语法1、 元素定位2、 控制浏览器操作3、 操作元素的方法3.1 点击和输入3.2 提交3.3 其他4、 鼠标操作5、 键盘操作6、 获取断言信息7、 等待页面加载完成7.1 显示等待7.2 隐式等待8、 页面切换9、 框处理9.1 警告框处理9.2 下拉框选择9.2.1 Sele

落伍的码农 3845

用Python画一个生日蛋糕并写上生日祝福对象及生日祝福语

用Python画一个生日蛋糕并写上生日祝福对象及生日祝福语。画一个双层蛋糕并点上蜡烛。代码运行时间较长,请静待惊喜出现,代码运行截图:完整程序代码:干货主要有:① 200 多本 Python 电子书(和经典的书籍)应该有② Python标准库资料(最全中文版)③ 项目源码(四五十个有趣且可靠的练手项目及源码)④ Python基础入门、爬虫、网络开发、大数据分析方面的视频(适合小白学习)⑤ Python学习路线图(告别不入流的学习)Python学习交流Q群1016.

落伍的码农 6349

Python入门进阶:68 个 Python 内置函数详解

内置函数就是Python给你提供的,拿来直接用的函数,比如print.,input等。截止到python版本3.6.2 ,python一共提供了68个内置函数,具体如下abs()dict()help()min()setattr()all()dir()hex()next()slice()any()divmod()...

落伍的码农 1480

利用Python监控儿子每天在电脑上面做了些什么

继打游戏、看视频等摸鱼行为被监控后,现在打工人离职倾向也会被监 控。有网友爆料称知乎正在低调裁员,视频相关部门几乎要裁掉一半。而在知乎裁员的讨论区,有网友表示企业安装了行为感知系统,该系统可以提前获知员工跳槽念头。而知乎在否认了裁员计划的同时,也声明从未安装使用过网上所说的行为感知系统,今后也不会启用类似软件工具。因为此事,深信服被推上风口浪尖,舆论关注度越来越高。一时间,“打工人太难了”“毫无隐私可言”的讨论层出不穷。今天就带大家领略一下怎么写几行 Python 代码,就能监控电脑。

落伍的码农 623

30段极简Python代码,30秒学一个实用技巧

人生苦短,快学Python!学 Python 怎样才最快,当然是实战各种小项目,只有自己去想与写,才记得住规则。今天给大家分享的是 30 个极简任务,初学者可以尝试着自己实现;本文同样也是 30 段代码,Python 开发者也可以看看是不是有没想到的用法。Python 是机器学习最广泛采用的编程语言,它最重要的优势在于编程的易用性。如果读者对基本的 Python 语法已经有一些了解,那么这篇文章可能会给你一些启发。作者简单概览了 30 段代码,它们都是平常非常实用的技巧,我们只要花几分钟就能

落伍的码农 572

利用Python实现短视频完美伪原创,制作独一无二的视频

1. 场景大家好,我是J哥。前段时间有人私信我,说自己辛辛苦苦剪辑的短视频,上传到某平台后,由于播放量太大,收到 降权 的通知,直接导致这个账号废掉了!其实,各大视频平台都有自己的一套鉴别算法,针对视频的 二次创作,如果直接搬运,都会面临着一些未知风险本篇将带大家用 Python 对短视频做一些特殊处理, 保证视频的 原创性 和 唯一性。2. 实现下面将从 MD5、光线、色彩 3 个方面来进行说明第 1 步, 修改视频的 MD5 值MD5 是一种密码散列函数,文件的 MD5

落伍的码农 2029

利用Python制作旋转花灯,祝大家元宵节快乐

1、原材料1.1 花灯纸如下所示,还可以加上自己喜欢的图案、文字等。2.2 Python环境和模块一台安装了Python环境的电脑,Python环境需要安装以下模块。干货主要有:① 200 多本 Python 电子书(和经典的书籍)应该有② Python标准库资料(最全中文版)③ 项目源码(四五十个有趣且可靠的练手项目及源码)④ Python基础入门、爬虫、网络开发、大数据分析方面的视频(适合小白学习)⑤ Python学习路线图(告别不入流的学习)P.

落伍的码农 1582

Python实战:导出聊天记录分析你和你的对象聊了什么

导出QQ聊天记录生成词云看看你和女朋友聊了什么(可惜我没女朋友)导出聊天记录打开消息管理器导出的格式选择txt格式(我这里选择导出的路径是桌面所以在桌面上生成了一个包含聊天记录的.txt文件)干货主要有:① 200 多本 Python 电子书(和经典的书籍)应该有② Python标准库资料(最全中文版)③ 项目源码(四五十个有趣且可靠的练手项目及源码)④ Python基础入门、爬虫、网络开发、大数据分析方面的视频(适合小白学习)⑤ Python学习路线图(告别不入流的

落伍的码农 7614

用python实现微信、钉钉等软件多开

我发现坛友分享的很多都是通过cmd 去start 多个微信虽然能实现多开,但不够灵活,比如我上午登录了一个微信,下午在登录就不太好用了当然也可能是我start的姿势不对。于是我就搜了下单实例原理,自己动手实现了个随用随开的。目前很多软件都限制单实例,大多数软件都是用Mutex来实现的而这个东西咱们可以用handle去干掉它,并且不影响使用。钉钉也是一样的步骤 不过Mutex的名字不一样我测试的钉钉的是:”\Sessions\1\BaseNamedObjects\{{239B7D43-86D5

落伍的码农 2410

利用Python解决掉谷歌人机验证,全自动识别真的牛啊

一、接触前感受第一次带我领略yolov5风骚的是这个视频:【亦】警惕AI外挂!我写了一个枪枪爆头的视觉AI,又亲手“杀死”了它。这样一来,我对人工智能打游戏产生了浓厚的兴趣,于是在B站查找人工智能基础,随便一个系列就是几十小时起步。我心想,值得的。但是,看完某个系列的第一条视频我放弃了,我懵逼啊。最后,我们来了解一下人工智能的智能在哪里为了让人工智能迅速成长,科学家们决定送它去打游戏干货主要有:① 200 多本 Python 电子书(和经典的书籍)应该有② Python标准库资料(最全中

落伍的码农 8926

Python算法工程师:心中无码便是高清,马赛克“脑补”算法 PULSE

1万恶马赛克万恶的马赛克,是阻碍人类进步的绊脚石。马赛克“脑补”算法 PULSE,助你图片模糊变高清。这是杜克大学近期的一项研究,将模糊人脸秒变高清。PULSE 算法目前只支持人脸的马赛克“去除”,因为训练数据都是人脸。也就是说,“脑补”其它物体马赛克下的内容也是可以的,只要你有数据!我知道,你一定又有了一些大胆的想法!「 Just do it 」 !今天,继续手把手教学。算法原理、环境搭建、效果测试...

落伍的码农 1053

伤腰的Python爬虫案例,零基础必备实战教程

目录前言开发环境介绍:爬虫案例数据采集一般步骤:1. 首先第一步,找到对应的链接地址2. 代码发送地址的请求3. 数据解析<解析我们要的数据> html数据, xpath4. 保存数据运行完整代码学习资料前言今天带大家采集一个二次元图片网站, 里面漂亮的小姐姐层出不穷,图片的数据量也是比较大的, 来一睹为快吧! !开发环境介绍:python 3.6pycharmrequestsparselos爬虫案例数据采集一般步骤:找

落伍的码农 752

利用Python使图片完美去除水印,我想试试马赛克的效果∧v∧

网上下载的 pdf 学习资料有一些会带有水印,非常影响阅读。比如下面的图片就是在 pdf 文件上截取出来的。安装模块PIL:Python Imaging Library 是 python 上非常强大的图像处理标准库,但是只能支持 python 2.7,于是就有志愿者在 PIL 的基础上创建了支持 python 3的 pillow,并加入了一些新的特性。pip install pillowpymupdf 可以用 python 访问扩展名为*.pdf、.xps、.oxps、.epub、

落伍的码农 3936

200行Python代码实现B站UP主小助手(显示视频播放数、粉丝数等)

功能点显示日期时间 显示树莓派当前局域网IP 显示当前UP主粉丝数 显示B站未读消息 显示B站视频总计播放数 显示视频总计获赞数 显示总计获得充电次数 显示直播间人气值 显示直播间弹幕 将直播间弹幕念出来(TTS)功能是不是还挺丰富的,从写第一行代码到完成也就花了两天不到的时间,这也证明了使用python开发的高效率,下面来说说这些功能开发中我遇到了哪些问题,我又是如何解决的。大家好,我是大帅,一个老程序猿。这是我第一次写Python哟,写得不好请多多指教:P...

落伍的码农 4654

5个方便好用的Python自动化脚本

相比大家都听过自动化生产线、自动化办公等词汇,在没有人工干预的情况下,机器可以自己完成各项任务,这大大提升了工作效率。编程世界里有各种各样的自动化脚本,来完成不同的任务。尤其Python非常适合编写自动化脚本,因为它语法简洁易懂,而且有丰富的第三方工具库。这次我们使用Python来实现几个自动化场景,或许可以用到你的工作中。1、自动化阅读网页新闻这个脚本能够实现从网页中抓取文本,然后自动化语音朗读,当你想听新闻的时候,这是个不错的选择。代码分为两大部分,第一通过爬虫抓取网页文本呢,第

落伍的码农 1952

超方便的 Python 自动唤醒窗口截图脚本

利用Python自带的win32api和win32con、win32gui等模块,我们能执行许多windows下的自动化操作。比如两个窗口的自动点击操作,从软件中的窗口复制文本到txt中,甚至是截图操作。截图的操作用途最为广泛,你可以用它配合定时工具,定时检测某个程序的运行情况;甚至可以根据截图做一些辅助性的决策,比如玩类似于《连连看 》的 游戏时,对相同类型的方块进行标记,辅助你玩游戏。下面就讲讲如何使用 win32api 实现自动唤醒并截图的操作。1.准备开始之前,你要确保Pyt...

落伍的码农 4954

Python制作金钱豹收款码表情包

源码:import osimport qrcodefrom pyzbar import pyzbarfrom PIL import Image #收款码地址img_adds='C:/Users/73152/Desktop/test/code.jpg'os.path.isfile(img_adds)img = Image.open(img_adds) # 显示图片,测试用img.show() txt_list = pyzbar.decode(img) ...

落伍的码农 1548

来自GitHub的Python开源项目,100%可用的12306多功能抢票助手,切勿作为商业用途

本项目clone来自https://github.com/testerSunshine/12306.git;仅修复一个小bug,然后修改配置文件,抢票可用;重申:本软件只供学习交流使用,勿作为商业用途!python版本3.6 - 3.7.4已有功能自动打码 自动登录 准点预售和捡漏 智能候补 邮件通知 server酱通知依赖库验证码目前可以本地识别,需要下载模型,放于项目根目录,全部代码来源于此项目传送门,表示感谢 1. 模型下载链接:h...

落伍的码农 1809

Python 蜻蜓fm有声书批量下载 支持账号登录 原创源码

目标站点有声小说-有声读物-电台广播在线听书-蜻蜓FMpython爬虫实战搞的是PC端,移动端可能有更加方便的接口,欢迎大家留意讨论反正是练手就随便抓一下pc端的包好了主要内容1.post请求登录 2.hmacMD5算法的简单使用这个例子的登录非常简单没有任何加密直接post就行真的是一点加密和未知参数都没有python实现,注意此处是类的一个方法不完整无法直接运行def login(self,user_id,password): data ..

落伍的码农 2273

这个Python自动扫雷算法写完了,估计看懂的人十不存一了吧

效果闲来无事,打开虚拟机上的扫雷玩了玩,觉得自己计算很浪费时间,还容易遗漏,就做了个自动扫雷。简单模式下很容易通关,困难的就看脸了,感兴趣的可以拿去运行一下。自动化处理核心代码段在 168~273行。次日,发现自动扫雷算法并不完整,上次的代码仅对单个数字周围进行判断。但在一些情况下,单个数字无法判断,要综合一片小区域确定某些方块是否一定是炸弹,或者一定安全。暂且称为高级算法。(并不是算法有多高级,本质上还是取集合(...

落伍的码农 2222

Python可视化分析《雪中悍刀行》,看看它为什么这么火?

本期是对热播网剧《雪中悍刀行》的一次爬虫与数据分析,总爬取条数1W条评论,很适合新人练手。案例中还特别加入了对评论的情绪文本分析处理,供大家参考。爬虫方面:由于腾讯的评论数据是封装在json里面,所以只需要找到json文件,对需要的数据进行提取保存即可。视频网址:https://v.qq.com/x/cover/mzc0020020cyvqh.html评论json数据网址:https://video.coral.qq.com/varticle/7579013546/co

落伍的码农 8110

进群就给我发邮件,敢问这是Python能够做到的?

目录前言原理准备go-cqhttp插件安装 nonebot框架的安装插件的拓展效果警告前言 emmmm,大家好,我叫善念。有点懒 好久没有给大家更新教程了。今天给大家带来的项目比较有趣,而且非常简单,简称 有手即可! 很多人应该都经历过,当你进入一些Python学习交流群的时候突然来了一封邮件,或者一些进群的自动@机器人。今天咱们要实现的就是这些相关功能! 讲句心里话,我写的一些文章有些...

落伍的码农 1709

不要迷恋我,虽然我利用Python来耍植物大战僵尸

比如说咱们玩的游戏它也是一个程序吧,游戏的角色血量、蓝条是不是都是一个数值储存在变量内,那么如果我们找到存放这个数值的变量(也可以叫做地址),修改这个变量的值,那么是不是就可以做到给咱们得人物加血量、修改人物等级的一系列操作。首先确定修改哪一款游戏的数据,然后确定修改游戏的哪一个数据,然后去寻找这个游戏内这个数据的地址,然后去修改这个数据。

落伍的码农 1万+

说我菜?那好,我用Python制作电脑与手机游戏脚本来赢你

目录前言分析(x0)分析(x1)那么如何去确定这个像素范围呢? 那么如何去判断出哪个块是黑块呢?视频教程源代码关于pyautogui的安装 1、下载后安装 2、检测安装是否成功前言大家好,我叫善念。我发现我的粉丝量涨的很慢,这次厚脸皮要波关注。这次做的是一个小巧的游戏脚本,本质上它可以用于任意的电脑与手机游戏。分析(x0) 这个游戏是4399上的“别猜百块儿”,...

落伍的码农 1万+

提前三天教你们python制作万能抢购神器,学不会就准备过光棍节吧

目录前言:分析(x0)第一步 第二步 第三步环境配置 模块安装selenium的环境配置Python代码视频教程前言: 大家好,我叫善念。自从很多关于python爬虫的文章被下架了后,我的博文是越来越没起色了。我想是因为账号的权重被下降的太多了。如果文章对您有所帮助,我希望大家可以帮忙点个一键三连,顺便动动您发财的小手给我来个如实的评论。 关于这个脚本的话,...

落伍的码农 1万+

利用Python找出QQ空间把你屏蔽的人

目录前言分析(x0 整体思路分析)分析(x1 好友数据的获取)准备工作使用到的模块模块的安装插件的安装分析(x0)分析(x2)分析(x3)代码分析(x3 获取屏蔽的好友)前言大家好,我叫善念,此篇文章为盲写,何为盲写呢.......就是我也没做任何准备,自己也没有做过这个实战,但是我心里肯定已经是有思路了的。 其实这样子的话对读者未必就一定是坏的,因为我没做过的话,那么在写文章的时候分析过程肯定是特别清晰的。而咱...

落伍的码农 838

Python采集群人员数据,记录JavaScript逆向分析过程

目录前言准备工作分析(x0)分析(x1)分析(x2)分析(x3)代码结语前言 本人所有文章内容、源码,除官方企业外,禁止个人转载,谢谢配合。 ....太多培训机构拿我的文章源码去讲公开课了,还有很多培训机构的招生员拿我源码自己编个小故事直接就是一篇文章(但凡这种都是一大堆废话+源码,毫无分析逻辑)。大家好,我叫善念。有大概一月没有来更新博文了,一个原因是反响并不理想,第二个原因则是每篇文章都是现写的,花费的时间...

落伍的码农 951

利用Python自动操纵鼠标键盘刷金币,工作室都是靠这种搬砖

不管是英雄联盟还是王者荣耀,总是有一个特殊的模式可以用来刷金币,为什么说是特殊模式呢?因为打的都是人机,或者并不影响游戏平衡,被其它玩家举报,同时你这种模式的战绩也没人去看你的。如果能利用Python做个自动化的脚本,帮我们自动玩游戏刷怪呢?不就意味着可以一直让我们的金币数目增加,而我们挂着电脑就可以了。对于LOL的脚本,我以前用过一个朋友做的软件,但是没有看他的代码,所以最近还在研究中,这里先说一个王者荣耀自动化的脚本实现方法吧。现在手机玩游戏都是靠触摸屏幕,那么我们首先要做的

落伍的码农 1622
上一篇: Python 蜻蜓fm有声书批量下载 支持账号登录 原创源码
下一篇: 来自GitHub的Python开源项目,100%可用的12306多功能抢票助手,切勿作为商业用途
落伍的码农
落伍的码农 慕尚传媒 Python编程官方账号 慕尚传媒 Python编程官方账号
博客等级 码龄5年 5605粉丝 43原创
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值