比特派app官方链接是什么|qq群机器人

作者: 比特派app官方链接是什么
2024-03-07 20:46:16

QQ机器人管理端

动手做一个QQ 群聊机器人 - 知乎

动手做一个QQ 群聊机器人 - 知乎首发于程序员实验室切换模式写文章登录/注册动手做一个QQ 群聊机器人Wayne ShiLearn by doingQQ 机器人作为一款与个人 QQ 号绑定的机器人,通过该机器人,可快速实现自动回复,自定义回复,满足群里日常聊天互动所需。今天带大家一起DIY一个QQ群聊机器人。本项目教程由hwk603发布在实验楼,完整教程及在线练习地址:基于图灵机器人实现QQ群聊机器人一、实验简介1.1 说明相信大家平时可能也在各种 QQ 群里遇到过一种叫做 QQ 群机器人的存在,其大多是基于腾讯 SmartQQ 协议实现的,在 github 上有很多关于此的开源项目。今天我们就用 QQ 机器人,配合图灵机器人的 api,实现一个可自动回复,自定义回复,满足群里日常聊天互动所需的群聊机器人。1.2 知识点linux shell 命令SmartQQBot 开源项目的 QQ 协议python1.3 效果二、实验步骤2.1 QQRobot 源码项目地址:GitHub - zeruniverse/QQRobot: QQBot, QQ机器人(群聊小黄鸡) LINUX挂机版, SmartQQ协议。Python版本及windows 32位EXEclone or download 到本地。打开 Xfce 终端:$ cd Code

$ git clone https://github.com/zeruniverse/QQRobot

2.2 图灵机器人访问图灵机器人官网。注册一个账号。2.2.1 创建机器人选择 QQ 机器人。2.2.2 设置机器人2.2.3 得到 APIkey2.3 代码配置2.3.1 机器人 API编辑 Code\QQRobot\ 目录下的 QQbot.py,修改其第34行,加入刚刚申请到的图灵机器人 APIkey。tulingkey='图灵 API'

2.3.2 群监控编辑 Code\QRobot\ 目录下的 groupfollow.txt,将需要机器人监控、回复的群的名字写入,每行一个群名。(注意 : 中文群名格式为 utf-8。)2.3.3 启动在 Code\QQRobot\ 目录下执行命令,:$ sudo nohup python2 QQBot.py >qbot.log&

如果没有问题,会在当前目录下生成一个名为 v.png 的二维码图片,通过手机 QQ 扫描该图片,完成登陆。$ cat log.log

执行可以输出运行 LOG,查看程序运行过程。2.3.4 功能启动成功以后,你的 QQ 就成功绑定了一个群聊机器人,你可以通过使用其他小号或者好友向你目前绑定的 QQ 号发起私聊,如果绑定成功,会有自动回复。之后,使用其他 QQ 号在监控的群里发送消息指令,群聊机器人会根据指令做出相应动作:群聊智能回复,在群中通过发送 !ai 问题语句,r如: !ai 谁最帅?,则机器人向AI平台请求问题的回复并回复到群,带有!ai关键字时优先触发此功能。群聊学习功能,在群中通过发送 !learn {ha}{哈哈}语句,则机器人检测到发言中包含"ha"时将自动回复"哈哈"。!delete {ha}{哈哈}可以删除该内容。学习内容会自动储存在database.群号.save文件。!deleteall 可删除该群所有记录。群聊复读功能,检测到群聊中连续两个回复内容相同,将自动复读该内容1次。三、QQRobot 分析3.1 登录3.2 收发消息3.3 好友相关3.4 群和讨论组相关本项目的完整代码、详细步骤及demo,可以在实验楼查看并在线完成:Python - 基于图灵机器人实现QQ群聊机器人更多Python经典项目:Python全部 - 课程微信关注公众号[实验楼],手机查看海量项目教程。编辑于 2016-11-04 12:56Python编程腾讯 QQ​赞同 992​​82 条评论​分享​喜欢​收藏​申请转载​文章被以下专栏收录程序员实验室发布、收录IT技术项

QQ 机器人 | QQ机器人文档

QQ 机器人 | QQ机器人文档

QQ机器人文档

介�

API文档 API文档

API文档

API文档(旧版)

SDK文档 SDK文档

NodeSDK

(opens new window)

PythonSDK

(opens new window)

GoSDK

(opens new window)

��规范

机器人平�

(opens new window)

新特性

更新日志

GitHub

(opens new window)

介�

API文档 API文档

API文档

API文档(旧版)

SDK文档 SDK文档

NodeSDK

(opens new window)

PythonSDK

(opens new window)

GoSDK

(opens new window)

��规范

机器人平�

(opens new window)

新特性

更新日志

GitHub

(opens new window) QQ 机器人 简介亮点�入�程1. 阅读文档2. �业主体入驻3 个人主体入驻4 创建应用5. 机器人�布�程6. 基础信�设置7. 开�场景选择8. 开�基础设置9. �布设置10. 使用范围�人员�置11. �员管�12. 高阶功能 # QQ 机器人 # 简介 QQ 机器人通过开放的平�承载机器人的定制化功能,让开�者�得更畅快的开�体验。 # 亮点 便�:通过开放��的形�,QQ 开放平��许开�者进行机器人定制化开�。 高效:�供一套标准化�易�入的API�websocket事件,�以帮助开�者��机器人的快速开�和迭代。 趣味:机器人创新 C 端交互方�,通过指令的方�承载�务,让多样化�务�得触手�达。 赋能:频��群���等QQ场景全�打通,深度�入QQ社交生�,用户基础大,�务范围广。 # �入�程 # 1. 阅读文档 为了更高效的进驻到 QQ 机器人平�,建议先阅读下列文档���动进驻工作: ��规范 | QQ机器人文档 开�说� | QQ机器人文档 # 2. �业主体入驻 �业主体入驻开�者默认支�频��群场景开�能力;个人主体入驻开�者默认仅支�频�场景开�能力。除默认开通的能力外,�续其他��能力申请上,�业开�者�个人开�者也存在差异。 # 步骤总览 注� �业入驻需��供工商信�,包括:�业执照�对公账�,如�具备的用户请�往个人入�进行入驻。

邮箱一旦填写完毕进入激活步骤,则被å� ç”¨ï¼Œä¸�å�¯ä¿®æ”¹ï¼Œæ‰€ä»¥é€‰é”™ä¸»ä½“ç±»å�‹çš„用户需è¦�æ›´æ�¢é‚®ç®±é‡�新注册。 # 2.1 点击「立å�³æ³¨å†Œã€� 温馨æ��示 æœ�务的三个类目,将鼠标放上å�»ï¼Œå°†ä¼šæœ‰ç›¸å…³åº”用的文档å�Šå¯¹åº”便æ�·å…¥å�£ï¼Œåœ¨æ³¨å†Œå‰�å�¯å…ˆé˜…读相关文档。 # 2.2 选择ä¼�业 # 2.3 填写邮箱 温馨æ��示 之å‰�å·²ç»�注册过的邮箱ä¸�需å†�注册,直æ�¥å�»ç™»é™†ç•Œé�¢ç™»é™†å�³å�¯ã€‚ # 2.4 激活邮箱 温馨æ��示 如未收到邮件,请检查å�ƒåœ¾ç®±æˆ–者点击é‡�æ–°å�‘é€�进行å°�试。 # 2.5 上传工商信æ�¯ 温馨æ��示 请务必确认上传的è�¥ä¸šæ‰§ç…§ä¸�填写的主体信æ�¯ä¿�æŒ�一致,账å�·æ³¨å†Œå®Œæ¯•ï¼Œå��续还存在其他主体认è¯�步骤,信æ�¯ä¸�一致将会导致å��续步骤出ç�°é—®é¢˜ã€‚ # 2.6 绑定管ç�†å‘˜ 温馨æ��示 姓å��和身份è¯�å�·ç �务必ä¸�手机å�·ç �对应è¿�è�¥å•†å®�å��登记的信æ�¯ä¸€è‡´ï¼Œå�¦åˆ™ä¼šæ��示错误。 # 2.7 资质审核 管ç�†å‘˜ç»‘定完æˆ�å��è´¦å�·å�³æ³¨å†Œæˆ�功,进入应用管ç�†é¡µå��,需进行å��ç»­ä¼�业资质审核步骤。 此步骤å�¯ä¸�第三步创建应用å�Œæ­¥è¿›è¡Œï¼Œä½†æ­¤æ­¥éª¤éœ€å°½å¿«å®Œæˆ�,å�¦åˆ™ä¼šå½±å“�应用的æ��审。 å…¥å�£ï¼šç‚¹å‡»é¡µé�¢æ��示æ�¡ä¸Šçš„「查看详情ã€�,å�³å�¯è¿›å…¥è¯¦æƒ…页é�¢æŸ¥çœ‹è¿›åº¦ã€‚ # 资质审核详细æµ�程 审核中-资料审核:  注册完æˆ�å�³è‡ªåŠ¨è¿›å…¥å·¥å•†ä¿¡æ�¯å®¡æ ¸ï¼Œæ­¤æ­¥éª¤æ— éœ€å¼€å�‘者æ“�作,但请éš�时关注状æ€�å�˜æ›´ã€‚ 审核中-待打款:  填写银行信æ�¯ï¼Œç‚¹å‡»æŸ¥çœ‹è¯¦æƒ…,进入二级页é�¢å¡«å†™å¯¹å…¬è´¦æˆ·çš„银行信æ�¯ï¼Œå¦‚系统没有对应ã€�银行所在地的区】,å�¯é€‰æ‹©å�Œå¸‚其他区。 审核中-银行打款中:  如银行信æ�¯å®¡æ ¸æ— è¯¯ï¼Œåˆ™ 3 天内腾讯公å�¸å°†ä¼šå¯¹å¡«å†™çš„对公银行账户进行 1 元以下å°�é¢�打款,请关注银行收款。 打款å¸�å�·ä¸»ä½“:深圳市腾讯计算机系统有é™�å…¬å�¸ï¼Œæ‰“款银行账å�·ï¼š755901658210820。 审核中-校验金é¢�:  收到打款å��,请在规定时间内äº�å¼€å�‘者管ç�†ç«¯å›�填收到的打款金é¢�进行验è¯�。 金é¢�校验次数有é™�,请确认收到打款å��进入二级页é�¢ï¼Œå¡«å†™å…·ä½“的金é¢�,如次数用完且校验ä¸�通过,该账å�·å°†è¢«å†»ç»“。 # 3 个人主体入驻 ä¼�业主体入驻开å�‘者默认支æŒ�频é�“ã€�群场景开å�‘能力;个人主体入驻开å�‘者默认仅支æŒ�频é�“场景开å�‘能力。除默认开通的能力外,å��续其他æ�¥å�£èƒ½åŠ›ç”³è¯·ä¸Šï¼Œä¼�业开å�‘者ä¸�个人开å�‘者也存在差异。 # 步骤总览 # 3.1 点击「立å�³æ³¨å†Œã€� 温馨æ��示 æœ�务的三个类目,将鼠标放上å�»ï¼Œå°†ä¼šæœ‰ç›¸å…³åº”用的文档å�Šå¯¹åº”便æ�·å…¥å�£ï¼Œåœ¨æ³¨å†Œå‰�å�¯å…ˆé˜…读相关文档。 # 3.2 选择个人 # 3.3 填写邮箱 温馨æ��示 之å‰�å·²ç»�注册过的邮箱ä¸�需å†�注册,直æ�¥å�»ç™»é™†ç•Œé�¢ç™»é™†å�³å�¯ã€‚ # 3.4 激活邮箱 温馨æ��示 如未收到邮件,请检查å�ƒåœ¾ç®±æˆ–者点击é‡�æ–°å�‘é€�进行å°�试。 # 3.6 绑定管ç�†å‘˜ 温馨æ��示 姓å��和身份è¯�å�·ç �务必ä¸�手机å�·ç �对应è¿�è�¥å•†å®�å��登记的信æ�¯ä¸€è‡´ï¼Œå�¦åˆ™ä¼šæ��示错误。 绑定æˆ�功å�³å�¯è¿›å…¥åº”用管ç�†é¡µå¼€å§‹åˆ›å»ºåº”用。 # 4 创建应用 创建机器人。 # 4.1 点击「创建机器人ã€� # 4.2 填写资料 # 4.2.1 机器人资料填写页é�¢ # 4.2.2 进入管ç�†ç«¯ 资料æ��交æˆ�功å��,å�³ä¼šç”Ÿæˆ�appid,点击对应的应用å�³å�¯è·³è½¬ç®¡ç�†ç«¯ã€‚ # 5. 机器人å�‘布æµ�程 建议按照首页å�‘布æµ�程,分别完æˆ�机器人é…�ç½®ã€�å¼€å�‘ã€�æ��交审核;审核通过并手动上线å��,方å�¯åœ¨QQ客户端添加机器人至对应场景。 # 6. 基础信æ�¯è®¾ç½® 机器人创建å��首次上线å‰�,在相关功能é…�ç½®æ��交审核时,机器人基本信æ�¯å°†ä¸€å¹¶æ��交审核; 机器人首次上线å��,机器人基本信æ�¯ä¿®æ”¹å°†å�•ç‹¬æ��交审核,审核完æˆ�å‰�其他模å�—ä¸�å�¯æ��交审核; 基本信æ�¯ä¿®æ”¹é™�制:æ¯�月å�¯ä¿®æ”¹5次。 æ“�作步骤: (1)点击「修改ã€�进入编辑,完æˆ�基础信æ�¯ä¿®æ”¹ (2)点击ä¿�存,扫æ��二维ç �确认ä¿�å­˜ (3)等待审核通过 (4)审核通过å��,å‰�往「å�‘布设置ã€�,点击「上线ã€� # 7. å¼€å�‘场景选择 在沙箱é…�置页é�¢ï¼Œä¸�å�Œç±»å�‹å¼€å�‘者支æŒ�å¼€å�‘ä¸�å�Œåœºæ™¯æœºå™¨äººåŠŸèƒ½ å�¯å¼€å�‘的场景ä¸�å¼€å�‘者认è¯�身份有关,详细如下: 认è¯�身份 QQ频é�“ QQ群 消æ�¯åˆ—表å�•è�Š ä¼�业开å�‘者 ✅ ✅ 申请å��å�¯å¼€å�‘ 个人开å�‘者 ✅ æš‚ä¸�开放 æš‚ä¸�开放 # 7.1 é…�置沙箱ç�¯å¢ƒ 建议开å�‘者根æ�®å®�际的需è¦�,选择在ä¸�å�Œåœºæ™¯å¼€å�‘机器人,完æˆ�对应场景的沙箱ç�¯å¢ƒé…�置。é…�置沙箱å��,开å�‘者å�¯åœ¨ã€ŒåŠŸèƒ½é…�ç½®ã€�ã€�「使用范围ä¸�人员ã€�页é�¢è§£é”�相应场景的é…�置能力。 沙箱频é�“ä»…å�¯è®¾ç½®å½“å‰�用户为频é�“主/管ç�†å‘˜çš„频é�“ã€�沙箱群仅å�¯è®¾ç½®å½“å‰�用户为群主/群管ç�†å‘˜çš„群,且沙箱频é�“æˆ�员ã€�沙箱群æˆ�员ä¸�å�¯å¤§äº�20人。 温馨æ��示 (1)é…�置沙箱群/频é�“,需è¦�先在QQ客户端创建符å�ˆæ²™ç®±è¦�求的QQ群/QQ频é�“ï¼›

(2)在频�场景,机器人�然�留「公域�/「�域�机器人的区分,设置为公域机器人�存确认���切�为�域机器人,但在「使用范围�人员��设置公域机器人的�许添加范围:“全部用户�添加�/“仅白��用户�添加�;

(3)�置沙箱频�/群�,机器人会出�在沙箱频�/沙箱群的机器人列表当中。 # 7.2 添加机器人至沙箱�境 �置好沙箱�境�,�通过机器人资料�将测试机器人添加进沙箱频�/沙箱群/沙箱账�,沙箱群/沙箱频�也�通过群/频�设置页的机器人列表添加机器人。 # 7.2.1 添加到沙箱频� 方法一:移动端点击沙箱频���图-->选择「机器人�进入商店页-->点击添加测试机器人 方法二:移动端登陆管�员QQ�-->扫�管�端频�机器人二维�-->打开机器人资料�-->添加至频�-->选择�置好的沙箱频�-->确认添加 温馨�示 二维��在「使用范围�人员�页�扫�。 �进入�信沙箱】 沙箱频�添加好测试机器人�,已��置沙箱�信账�的QQ�,�沙箱频�打开机器人资料�,选择�信,�进入�信沙箱�境 温馨�示 当账�在「沙箱�置�-「在频��信�置�完��置�,该账��任�渠�进入该机器人的频��信窗�,拉到的该机器人指令���基础信�资料等内容�为沙箱�境信�。 # 7.2.2 添加到沙箱群 方法一:移动端点击沙箱群"设置"-->选择「群机器人�进入商店页-->点击添加测试机器人 方法二:移动端登陆管�员QQ�-->扫�管�端QQ群和消�列表机器人二维�-->打开机器人web资料�-->点击「添加到机器人�-->跳转到native资料�-->分享到沙箱群-->打开native资料�-->点击「添加到本群�-->选择�置好的沙箱群-->��确认添加 温馨�示 二维��在「使用范围�人员�页�扫� # 7.2.3 添加到沙箱账�消�列表 移动端登陆管�员QQ�-->扫�管�端QQ群和消�列表机器人二维�-->打开机器人资料�-->点击"�消�"-->��确认添加-->进入消�列表开�沙箱��对� # 8. 开�基础设置 ����置开�所需信� # 8.1 机器人 AppID 此处主�展示机器人QQ��AppID�Token�AppSecret。 温馨�示 此信���对外传播 # 8.2 �调地� 在跳转h5需�OAuth的时候使用 (如机器人�务是跳转�程�,�忽略),�调地�上�为10�。 # 8.3 消�URL白���置 填写机器人下�消�中所包�的链�域�,域�需在此处�交���生效,域�上�为20�,�年�修改50次。 温馨�示 域�需��进行 ICP 备案,并通过域�校验��报备�功。 # 8.4 频�用户���馈 为了帮助开�者�� C 端用户对�机器人的评价��馈,平�在频�场景为开�者�入了"兔�巢�馈空间",开�者�以通过创建产��馈空间。 频�用户���馈: 点击进入登陆�,根��示创建产�,将会�得一个兔�巢�馈空间,C 端用户所填写的机器人�馈将�步至此空间,开�者以��登陆此空间查看用户�馈。 产�ID填写: 需�在此处填写兔�巢�馈空间的产� ID,C 端用户的机器人�馈���步至此处,详细��路径如开�者端�示:设置-->产�设置-->产� ID。 温馨�示 兔�巢创建�使用详情�点击用户�馈空间创建攻略 (opens new window) # 8.5 IP白���置 为了防范��调用安全�险,平�将支�机器人�置IP白��。(当��针对新�机器人默认�用ip白��,�续会��对旧的机器人进行�度) IP白��功能�用之�,开放平�将会在正��境对开�者的部署IP进行�制:�有白��IP�能��websocket和调用OPENAPI的��。当�IP白���作用�正��境,�影�机器人在沙箱�境的使用。��域�如下: ��调用凭�:https://bots.qq.com/app/getAppAccessToken �区分正��境�沙箱�境 正��境:https://api.sgroup.qq.com/ 沙箱�境:https://sandbox.api.sgroup.qq.com 沙箱�境地��会收到在开�者平��置的沙箱频��沙箱�信QQ��沙箱群�沙箱��QQ�的事件,且调用openapi仅能�作沙箱�境 对�新�机器人,平�默认�用IP白��功能,并�制�有填写了IP白���能�审和上线。 温馨�示 IP白��目的是��开�者安全,请�置有效的公网唯一IP。 # 9. �布设置 开�者�以通过��布设置】��置机器人指令��务,此处�置的指令��务将会在C端指令���资料�等处展示,以便用户�机器人快�完�交互,�端逻辑�需通过代�开���。 # 9.1 功能�置 功能�置分为�务�置�指令�置�快����置。其中指令��对应C端频��群�消�列表��场景下输入框“/�拉起的指令��,指令��的�务�指令在“�务�置��“指令�置�页�分别�作�置;快���对应C端消�列表��场景下拉起的输入框下的功能��,快���的�务�指令在�一页�下�作�置。 # 9.1.1 �务�置 消�列表���群��频�文字�频� “/� 指令���机器人资料�「�务�所展示的供用户快�跳转机器人�务�程�页�的功能,开�者需在管�端�置,��置功能上�为24个。 �称:请简��练的�述功能,字数�超过8个中文字符或 16个英文字符,内容需符�平���规范。 介�:请简�的对功能进行介�,字数�超过40个中文字符或 80个英文字符,内容需符�平���规范。 appID:请输入�程��务的ID�。 path:请输入�程�的路径。 extendData:请输入�程� extendData,目�仅频�场景�用。 ��频�和当�人信� | QQ机器人文档 (opens new window) ����:请选择本�务是开放给所有用户还是仅针对频�主和管�员。 使用场景:请选择该指令所需�置的用户场景,包括QQ频��频��信�QQ群�消�列表等共四个场景,�际所展示的��置场景�决�当�机器人开�者的角色�所具备的场景��和沙箱�置状�。 注� extendData仅支�在频�场景下开放频�ID��频�ID,群场景�消�列表��场景暂无相关字段开放;

当�置了extendData字段且使用场景�时支�频��其他场景时,用户在�频�场景打开该�务�程�,频�ID��频�ID返�为空。 # 9.1.2 指令�置 消�列表���群��频�文字�频� “/� 指令���机器人资料�「指令�所展示的供用户快�输入的指令入�,开�者需在管�端�置,��置功能上�为24个。 指令�:请简��练地�述指令,字数�超过8个中文字符或 16个英文字符,内容需符�平���规范。 指令介�:请简�的对指令进行�述,字数�超过15个中文字符或30个英文字符,内容需符�平���规范。 ����:请选择本指令是开放给所有用户还是仅针对频�主和管�员。 使用场景:请选择该指令所需�置的用户场景,包括QQ频��频��信�QQ群�消�列表等共四个场景,�际所展示的��置场景�决�当�机器人开�者的角色�所具备的场景��和沙箱�置状�。 开�者�添加�删�指令,管�端�置的功能顺�� C 端机器人指令集展示的功能顺�一致,建议将常用/核心的指令�置。 # 9.1.3 快��� �务 开�者需在管�端�置用� C 端的消�列表��场景快���的�程��务,��置功能上�为12个。 �称:请简��练的�述功能,字数�超过8个中文字符或 16个英文字符,内容需符�平���规范。 介�:请简�的对功能进行介�,字数�超过40个中文字符或 80个英文字符,内容需符�平���规范。 appID:请输入�程��务的ID�。 path:请输入�程�的路径。 指令 开�者需在管�端�置用� C 端的消�列表��场景快���的功能指令,��置功能上�为12个。 指令�:请简��练地�述指令,字数�超过8个中文字符或 16个英文字符,内容需符�平���规范。 指令介�:请简�的对指令进行�述,字数�超过15个中文字符或30个英文字符,内容需符�平���规范。 注� 指令��务和快���模�暂�需��独�审,自测完��,填写自测报告�自测报告一起�审。 # 9.2 自测报告 开�者需下载机器人自测报告模版,在自测频�内根�模��求测试机器人的功能,并填写完自测报告�上传。 自测报告:机器人自测报告模� (opens new window)。 # 10. 使用范围�人员�置 开�者�根�机器人�际��需��制�添加机器人至频��群�消�列表��的范围。 机器人首次上线�,开�者��置�场景下机器人使用范围为"全�"/"白��",切�为白���需等待机器人完�首次上线审核�方��置添加白��。 机器人首次上线�,使用范围的�"全�"切�为"白��"无需等待审核结�,立�生效;使用范围�"白��"切�为"全�"时需�等待审核结�。 审核结�返��,�����交审核。 频�白���群白���消�列表��用户白��上��20�。 温馨�示 将频�/群/消�列表��的使用范围设置为全�,��许全部频�/群/用户通过机器人资料�添加该机器人,开�者�将机器人资料�通过链��二维�等形�分享给频�主/群主/管�员�用户进行机器人添加 频�/群/消�列表��的使用范围设置为白��,�仅�许白��内频�的频�主/管�员�群的群主/管�员�用户通过资料�添加该机器人至对应频�群�消�列表��; 将指定频��群�用户�白��删除�,并�会在C端移除机器人�该频��群�用户的关系链,但在QQ客户端�作机器人移除�,无法�通过机器人资料�添加该机器人,并�能影�机器人在该关系链场景的消�对��务。 # 11. �员管� # 11.1 角色 开�者管�端的角色共有两�:管�员和普通�员。 管�员 :支�修改,但仅管�员本人��作 普通�员 :�添加最大�度为50人 # 11.2 �� 登陆�� :拥有该��的�员�登陆和查看开�者管�端信�,但��编辑。 �布�� :拥有该��的�员�编辑和�交�务�指令等模�。 开�设置 :拥有该��的�员�编辑和�交�调地��URL 模�。 温馨�示 登陆��是基础��,�拥有�布��和开���的��是拥有登陆�� # 12. 高阶功能 # 12.1 基础消�功能 �消�类�】机器人��消�分为主动消�和被动消�: 被动消� :严格的 AB 对�形�(用户艾特机器人�� A,机器人�� B),被动消�有效期为5分钟。 主动消� :主动触�类�的消�,满足�件机器人主动��(如定时�醒),主动消�无需在管�者平�进行上传审核。 �主动消��制 】 主动消��日�个频��制��20�,且仅�许在2个�频�下�主动消�。 暂�开放"入群欢�语"�务。 监�事件"当机器人被添加进频�"�,�制机器人仅在1个�频�内下�主动消�。 普通消��支�图文+文本,如需�置图文+文本,�使用ark消���。 # 12.2 Markdown能力申请 申请方�:点击 QQ机器人消�模�能力 (opens new window),填写申请表进行能力申请。 申请�件: �域机器人:已审核上��使用目的 场景��; 公域机器人:已审核上��过�7天平�使用频�数达3个�以上�使用目的 场景��。 群机器人:已审核上��过�7天平�使用群数达3个�以上�使用目的 场景��。 审核周期:

�月15-20日统一审核,审核结�会进行邮件通知。 机器人平��系邮箱:QQ_Bot_API@Tencent.com 在GitHub上编辑此页 (opens new window) 上次更新: 1/5/2024, 12:01:20 PM 贡献者� 手机QQ扫� 加入官方频�开�者社区

【NoneBot】官方QQ机器人群聊接入与开发 - 哔哩哔哩

eBot】官方QQ机器人群聊接入与开发 - 哔哩哔哩 【NoneBot】官方QQ机器人群聊接入与开发doupoa

关注专栏/【NoneBot】官方QQ机器人群聊接入与开发【NoneBot】官方QQ机器人群聊接入与开发

2023年11月16日 07:28--浏览 ·

--喜欢 ·

--评论

doupoa粉丝:376文章:3

关注截止至发稿前仅参加了tx开发者大赛的用户可使用群聊权限1.开发环境要求1.1在开始之前您需要准备:(1)一个开放公域、群聊权限的机器人账号(2)一台可联网、运行稳定的计算机或服务器(建议:win10系统及以上,x86处理器)(3)Python3.8及以上的开发环境(Nonebot基于Python运行)(4)一款趁手的开发IDE (本文以VScode为例)1.2确认机器人账号权限在QQ机器人管理平台中,请确保您的机器人账号设置、拥有图示功能或权限机器人类型必须为公域机器人创建一个少于20人的沙箱群并开放权限确保以上权限开放后就可以在沙箱群中“设置-群机器人”将机器人拉入群。2.配置开发环境2.1安装NoneBot请参照自行参照NoneBot官方网站“快速入门”安装NoneBot接下来的步骤默认您已经安装了NoneBot及NoneBot Cli框架。2.2创建一个项目在想要创建项目的文件夹下使用 nb create 指令创建一个新项目,随后按控制台提示进行即可(上下键选择,空格键选中或取消,回车键确定)其中需要注意的:驱动器:必须选中 HTTPX(HTTPX驱动器)以及 websockets(websockets驱动器)适配器:必须选中 QQ(QQ官方机器人)插件存储位置:建议选择 在“src”文件夹中是否创建虚拟环境:如果项目后续需要迁移至其他目录或计算机建议选“否”2.2机器人配置完成机器人项目创建后使用趁手的IDE打开项目文件夹,根据以下图片打开目标文件并填写相关信息:如图所示图中的 id、token、secret可在管理平台中指示位置获取。如图所示请注意,id、token、secret三项不得透露给除您以外的任何人 ,其作用相当于账号密码。如不慎泄露,请立即前往平台重置。以下是填写模板:ENVIRONMENT=devDRIVER=~httpx+~websockets QQ_IS_SANDBOX=false COMMAND_START=["/"] QQ_BOTS=' [    {        "id":"",        "token":"",        "secret":"",        "intent":{            "c2c_group_at_messages":true,            "public_guild_messages":true        }    }]'2.3运行机器人在终端或IDE内终端使用 nb run --reload 指令启动机器人(--reload 代表项目内文件有更改机器人就会热重载)。如果一切正常将会在控制台看到以下画面:注意保密可以在控制台中 [EventType.READY] 成功获取到了机器人的信息。请注意,在dev模式下会输出更详细的调试信息,其中也包括id、token、secret三项,因此在截图请教他人时请注意信息保密。3.开发插件在 src/plugins 文件夹中我们开始创建一个插件,那就命名为“ping”吧!我们在给机器人发送 “Ping”的时候,机器人就会回复我们“Pong!”代码如下:如图所示保存以上代码后,我们可以发现控制台检测到文件的更新并开始重载机器人了。4.测试插件似乎一切就绪,我们来到沙箱群开始测试吧成功啦!如果您的机器人也是如上图回复的您,那么已经证明您已经完成的本文的所有内容!接下来将交给无限创意的你了!如果任何问题请先熟读NoneBot文档及QQ官方机器人官方文档。机器人名称头像版权归原作者所有,如有侵权请联系删除。本文为我原创

QQ机器人

python

Nonebot

分享到:

投诉或建议评论-----

教你如何搭建自己的qq机器人,全是干货! - 知乎

教你如何搭建自己的qq机器人,全是干货! - 知乎切换模式写文章登录/注册教你如何搭建自己的qq机器人,全是干货!皮小孩加油(。ò ∀ ó。)我的博客地址(期待你的关注):最新功能请看下一篇文章:前期准备如果觉得麻烦可以直接跳到最后下载完整项目,你只需要根据我写的使用说明更改几处地方即可搭建成功!1、机器人框架的下载和配置(1)首先需要一个qq机器人框架,我使用的是基于mirai 以及 MiraiGo 开发的里面有开发文档,包括很多API.框架下载地址:windows推荐下载这个,linux我没试过自己去看文档哈。下载后解压得到三个文件。(2)双击exe文件,出现如下窗口,一直点击确定就行了(3次):然后会生成一个批处理文件,双击它(以后也是直接用它)输入0后回车,然后关闭,此时已经在原来的文件目录下生成了配置文件config.yml。(3)双击config.yml,输入QQ号和密码(建议使用无登录保护的qq,否则可能出现滑块验证等问题)。也可以不输入账号密码,直接运行那个bat文件会出现二维码扫码登录,这样更加安全。再转到最后两行,把前面的#去掉使其生效。(很重要!!很重要!!)(4)配置完后直接双击bat文件。等待一段时间出现如下窗口:这两个端口都应该出现(很重要):更多问题请看帮助文档:补充:窗口可能会一直出现如下警告(这个不需要管,是正常现象):窗口会一直显示接收到信息,不要关闭。2、python的配置和安装电脑没有python环境或者觉得配置太麻烦可直接在下面链接购买exe版本,只要有电脑就可以运行!!QQ机器人基础版exeQQ机器人多功能版exe同样里面都有使用说明,配置更加方便(强烈推荐)!!要实现自动回复功能的机器人需要借助一种语言,我选择的是python。所以需要电脑配置好python环境和下载集成开发环境pycharm。可以直接上网找相关的安装和配置教程,这里就不展开说了。当然在实现所有功能之前需要安装一些第三方库,这个不知道的也可以百度。具体实现1、发送信息这包括发送私聊信息和发送群聊信息。下面的函数已经写好了,直接调用函数传入参数就行了。import socket

def send_msg(resp_dict):

client = socket.socket(socket.AF_INET, socket.SOCK_STREAM)

ip = '127.0.0.1'

client.connect((ip, 5700))

msg_type = resp_dict['msg_type'] # 回复类型(群聊/私聊)

number = resp_dict['number'] # 回复账号(群号/好友号)

msg = resp_dict['msg'] # 要回复的消息

# 将字符中的特殊字符进行url编码

msg = msg.replace(" ", "%20")

msg = msg.replace("\n", "%0a")

if msg_type == 'group':

payload = "GET /send_group_msg?group_id=" + str(

number) + "&message=" + msg + " HTTP/1.1\r\nHost:" + ip + ":5700\r\nConnection: close\r\n\r\n"

elif msg_type == 'private':

payload = "GET /send_private_msg?user_id=" + str(

number) + "&message=" + msg + " HTTP/1.1\r\nHost:" + ip + ":5700\r\nConnection: close\r\n\r\n"

print("发送" + payload)

client.send(payload.encode("utf-8"))

client.close()

return 0(1)比如发送私聊信息(QQ用接收者的):resp_dict={'msg_type':'private','number':QQ号,'msg':'你好'}

send_msg(resp_dict)(2)发送群聊信息(群号自己用一个):send_msg({'msg_type': 'group', 'number': QQ群号, 'msg': '大家好'})(3)当然不止发送文本信息,还可以发表情、图片、音乐等。还可以艾特某人。例如:发表情send_msg({'msg_type': 'group', 'number': QQ群号, 'msg': '[CQ:shake]'})发窗口抖动send_msg({'msg_type': 'group', 'number': QQ群号, 'msg': '[CQ:shake]'})还有很多CQcode可以去官方文档查看:http://docs.go-cqhttp.org/cqcode/2、获取群成员列表import requests

def get_group(id):

response = requests.post('http://127.0.0.1:5700/get_group_member_list?group_id='+str(id)).json()

for i in response['data']:

if(i['card']!=''):

print(i['card']+str(i['user_id']))

else:

print(i['nickname']+str(i['user_id']))直接调用即可(群号随便用一个)get_group(QQ群号)会打印出所有群成员的群昵称(未编辑群昵称的打印QQ昵称)和QQ号。3、接收上报的事件下面这个代码命名为receive.py,之后方便调用(不要运行这个代码,否则端口会冲突)。这个返回的是事件的上报信息,包括接收到的信息、加好友请求等等。import socket

import json

ListenSocket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)

ListenSocket.bind(('127.0.0.1', 5701))

ListenSocket.listen(100)

HttpResponseHeader = '''HTTP/1.1 200 OK\r\n

Content-Type: text/html\r\n\r\n

'''

def request_to_json(msg):

for i in range(len(msg)):

if msg[i]=="{" and msg[-1]=="\n":

return json.loads(msg[i:])

return None

#需要循环执行,返回值为json格式

def rev_msg():# json or None

Client, Address = ListenSocket.accept()

Request = Client.recv(1024).decode(encoding='utf-8')

rev_json=request_to_json(Request)

Client.sendall((HttpResponseHeader).encode(encoding='utf-8'))

Client.close()

return rev_json4、实现简单的自动回复需要写一个while循环一直接收返回的rev,然后根据字段里面的信息做出回应。下面的代码需要改一处地方,改为你机器人的QQ号。if rev["post_type"] == "message":

#print(rev) #需要功能自己DIY

if rev["message_type"] == "private": #私聊

if rev['raw_message']=='在吗':

qq = rev['sender']['user_id']

send_msg({'msg_type':'private','number':qq,'msg':'我在'})

elif rev["message_type"] == "group": #群聊

group = rev['group_id']

if "[CQ:at,qq=机器人的QQ号]" in rev["raw_message"]:

if rev['raw_message'].split(' ')[1]=='在吗':

qq=rev['sender']['user_id']

send_msg({'msg_type':'group','number':group,'msg':'[CQ:poke,qq={}]'.format(qq)})

else:

continue

else: # rev["post_type"]=="meta_event":

continue上述代码实现的是,当私聊对方发送在吗时回复我在;当群聊有人艾特并发送在吗时会戳一戳对方。大家也可以去官方文档查看所有的事件和API,实现各种各样的功能。下一篇文章实现更多功能实现了更多功能,包括定时发送消息、智能聊天、天气、星座运势等等。下一篇文章地址:完整项目下载地址完整项目包括框架、代码和详细使用说明可以去链接下载:QQ机器人基础版(文章1-2所有功能)QQ机器人多功能版(文章1-3所有功能)下载完只需要按照使用说明修改几处地方即可搭建成功!!使用说明是word版本,说的十分详细,分为以下四个方面:个人主页地址:编辑于 2022-01-20 11:12机器人智能机器人Python​赞同 51​​34 条评论​分享​喜欢​收藏​申请

QQ机器人制作教程,超详细_qqbot机器人制作-CSDN博客

>

QQ机器人制作教程,超详细_qqbot机器人制作-CSDN博客

QQ机器人制作教程,超详细

置顶

皮小孩ls

已于 2023-02-01 20:43:17 修改

阅读量10w+

收藏

3.2k

点赞数

552

分类专栏:

QQ机器人

文章标签:

python

QQ机器人

自动回复信息

于 2021-08-27 21:37:28 首次发布

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。

本文链接:https://blog.csdn.net/qq_44809707/article/details/119959864

版权

QQ机器人

专栏收录该内容

3 篇文章

168 订阅

订阅专栏

目录

前期准备1、机器人框架的下载和配置2、python的配置和安装

具体实现1、发送信息2、获取群成员列表3、接收上报的事件4、实现简单的自动回复5、解决重复接收消息的问题(多次回复问题)

第二、三篇文章实现更多功能完整项目下载地址(配置了python环境)完整项目下载地址(电脑没有python环境)

python学习资料下载地址:python学习资料整理 完整项目,包括框架、代码和详细使用说明可以去社区下载(下载完只需要按照使用说明修改几处地方即可搭建成功!): QQ机器人基础python版(文章1-2所有功能) QQ机器人多功能python版(文章1-3所有功能)

最新功能请看第二篇文章:搭建一个QQ机器人叫女朋友起床!

前期准备

1、机器人框架的下载和配置

(1)首先需要一个qq机器人框架,我使用的是基于mirai 以及 MiraiGo 开发的go-cqhttp(里面有开发文档)。 框架下载地址 windows推荐下载这个(推荐最新版本),linux我没试过自己去看看文档哈。

下载后解压得到三个文件。 (2)双击exe文件,出现如下窗口,一直点击确定就行了(3次): 然后会生成一个批处理文件,双击它(以后也是直接用它)

输入0后回车,然后关闭,此时已经在原来的文件目录下生成了配置文件config.yml。 (3)双击config.yml,输入QQ号和密码(建议使用无登录保护的qq,否则可能出现滑块验证等问题)。 也可以不输入账号密码,直接运行那个bat文件会出现二维码扫码登录,这样更加安全。

再转到最后两行,把前面的#去掉使其生效。(很重要!!很重要!!)

(4)配置完后直接双击bat文件。等待一段时间出现如下窗口: 如果出现报错,可以不改配置,直接双击bat文件扫码登陆。

这两个端口都应该出现(很重要): 更多问题请看帮助文档。

补充:窗口可能会一直出现如下警告(这个不需要管,是正常现象):

窗口会一直显示接收到信息,不要关闭。

2、python的配置和安装

电脑没有python环境或者觉得配置太麻烦可直接购买exe版本,只要有电脑就可以运行。 QQ机器人基础版exe QQ机器人多功能版exe 同样里面都有使用说明,半分钟搞定

要实现自动回复功能的机器人需要借助一种语言,我选择的是python。 所以需要电脑配置好python环境和安装集成开发环境pycharm。安装教程可以看我的文章—>>>python安装详细教程 当然在实现所有功能之前需要安装一些第三方库,这个不知道的也可以百度。

具体实现

1、发送信息

这包括发送私聊信息和发送群聊信息。下面的函数已经写好了,直接调用函数传入参数就行了。

import socket

def send_msg(resp_dict):

client = socket.socket(socket.AF_INET, socket.SOCK_STREAM)

ip = '127.0.0.1'

client.connect((ip, 5700))

msg_type = resp_dict['msg_type'] # 回复类型(群聊/私聊)

number = resp_dict['number'] # 回复账号(群号/好友号)

msg = resp_dict['msg'] # 要回复的消息

# 将字符中的特殊字符进行url编码

msg = msg.replace(" ", "%20")

msg = msg.replace("\n", "%0a")

if msg_type == 'group':

payload = "GET /send_group_msg?group_id=" + str(

number) + "&message=" + msg + " HTTP/1.1\r\nHost:" + ip + ":5700\r\nConnection: close\r\n\r\n"

elif msg_type == 'private':

payload = "GET /send_private_msg?user_id=" + str(

number) + "&message=" + msg + " HTTP/1.1\r\nHost:" + ip + ":5700\r\nConnection: close\r\n\r\n"

print("发送" + payload)

client.send(payload.encode("utf-8"))

client.close()

return 0

(1)比如发送私聊信息(QQ用接收者的):

resp_dict={'msg_type':'private','number':QQ号,'msg':'你好'}

send_msg(resp_dict)

(2)发送群聊信息(群号自己用一个):

send_msg({'msg_type': 'group', 'number': QQ群号, 'msg': '大家好'})

(3)当然不止发送文本信息,还可以发表情、图片、音乐等。还可以艾特某人。 例如:发表情

send_msg({'msg_type': 'group', 'number': QQ群号, 'msg': '[CQ:shake]'})

发窗口抖动

send_msg({'msg_type': 'group', 'number': QQ群号, 'msg': '[CQ:shake]'})

还有很多CQcode可以去官方文档查看:http://docs.go-cqhttp.org/cqcode/

2、获取群成员列表

import requests

def get_group(id):

response = requests.post('http://127.0.0.1:5700/get_group_member_list?group_id='+str(id)).json()

for i in response['data']:

if(i['card']!=''):

print(i['card']+str(i['user_id']))

else:

print(i['nickname']+str(i['user_id']))

直接调用即可(群号随便用一个)

get_group(QQ群号)

会打印出所有群成员的群昵称(未编辑群昵称的打印QQ昵称)和QQ号。

3、接收上报的事件

下面这个代码命名为receive.py,之后方便调用(不要运行这个代码,否则端口会冲突)。这个返回的是事件的上报信息,包括接收到的信息、加好友请求等等。

import socket

import json

ListenSocket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)

ListenSocket.bind(('127.0.0.1', 5701))

ListenSocket.listen(100)

HttpResponseHeader = '''HTTP/1.1 200 OK\r\n

Content-Type: text/html\r\n\r\n

'''

def request_to_json(msg):

for i in range(len(msg)):

if msg[i]=="{" and msg[-1]=="\n":

return json.loads(msg[i:])

return None

#需要循环执行,返回值为json格式

def rev_msg():# json or None

Client, Address = ListenSocket.accept()

Request = Client.recv(1024).decode(encoding='utf-8')

rev_json=request_to_json(Request)

Client.sendall((HttpResponseHeader).encode(encoding='utf-8'))

Client.close()

return rev_json

4、实现简单的自动回复

需要写一个while循环一直接收返回的rev,然后根据字段里面的信息做出回应。 下面的代码需要改一处地方,改为你机器人的QQ号。 可以把下面的代码命名为main.py,之后的代码都是在这里面加的。需要一直运行,不能关闭。

if rev["post_type"] == "message":

#print(rev) #需要功能自己DIY

if rev["message_type"] == "private": #私聊

if rev['raw_message']=='在吗':

qq = rev['sender']['user_id']

send_msg({'msg_type':'private','number':qq,'msg':'我在'})

elif rev["message_type"] == "group": #群聊

group = rev['group_id']

if "[CQ:at,qq=机器人的QQ号]" in rev["raw_message"]:

if rev['raw_message'].split(' ')[1]=='在吗':

qq=rev['sender']['user_id']

send_msg({'msg_type':'group','number':group,'msg':'[CQ:poke,qq={}]'.format(qq)})

else:

continue

else: # rev["post_type"]=="meta_event":

continue

上述代码实现的是,当私聊对方发送在吗时回复我在;当群聊有人艾特并发送在吗时会戳一戳对方。 大家也可以去官方文档查看所有的事件和API,实现各种各样的功能。

5、解决重复接收消息的问题(多次回复问题)

接收本地端口的数据时会有重复的报文(大概6次),就像这样: 解决办法一: 出现这种问题的小伙伴检查一下receive.py,其中的HttpResponseHeader应该和我这样才对。

解决办法二:(不推荐,比较麻烦) 查看了一下接收到的数据,发现每条信息会被重复接收,于是在while循环里修改对接收数据的处理。 这就需要判断消息的id,如果遇到重复消息id的数据就不做处理。 (1)在while循环外面增加一个列表 判断接收数据的message_id是否在列表里,在的话就说明是重复数据,那就不处理。并且由于程序一直在运行,list会不断变大,于是我加了一个判断,如果列表长度大于50就清空。 (2)接收数据的代码替换成以下代码 以前是这样: 修改之后:

rev = rev_msg()

id=rev['message_id']

if(len(id_list)>=50):

id_list=[]

print(id_list)

#print(time1==time2)

if id not in id_list:

id_list.append(id)

print(rev)

else:

continue

这样就不会出现重复接收数据的情况。

第二、三篇文章实现更多功能

实现了更多功能,包括定时发送消息、智能聊天、天气、星座运势、生日书、获取歌词、点歌、爆照等等。 第二文章地址:搭建一个QQ机器人叫女朋友起床! 第三篇文章地址:搭建一个多功能机器人详细教程 首先感谢大家对本文的支持,第二、三篇文章功能更多,跪求大家的支持!!!

完整项目下载地址(配置了python环境)

完整项目包括框架、代码和详细使用说明可以去链接下载(下载完只需要按照使用说明修改几处地方即可搭建成功!): QQ机器人基础版(文章1-2所有功能) QQ机器人多功能版(文章1-3所有功能)

使用说明是word版本,说的十分详细

完整项目下载地址(电脑没有python环境)

电脑没有python环境或者觉得配置太麻烦可直接购买exe版本,只要有电脑就可以运行。 QQ机器人基础版exe QQ机器人多功能版exe 同样里面都有使用说明,半分钟搞定

但是这也有一个坏处,就是不可编程修改,功能已经固定了,但适合编程小白!! python学习资料下载地址:python学习资料整理

优惠劵

皮小孩ls

关注

关注

552

点赞

3237

收藏

觉得还不错?

一键收藏

打赏

知道了

367

评论

QQ机器人制作教程,超详细

目录前期准备1、机器人框架的下载和配置2、python的配置和安装具体实现1、发送信息2、获取群成员列表3、接收上报的事件4、实现简单的自动回复下一篇文章介绍更多功能前期准备1、机器人框架的下载和配置首先需要一个qq机器人框架,我使用的是基于mirai 以及 MiraiGo 开发的go-cqhttp(里面有开发文档)。框架下载地址Windows下32位文件为 go-cqhttp-v*-windows-386.zipWindows下64位文件为 go-cqhttp-v*-windows-amd6

复制链接

扫一扫

专栏目录

娱乐群管便民QQ机器人免费版超级自定义

02-27

自带1000+项功能免费使用,娱乐+群管+便民+网络接口功能,机器人的功能可以自定义增加、修改、删除,自定义程度非常高。

手把手QQ机器人制作教程,根据官方接口进行开发,基于Python语言制作的详细教程(更新中)

唤醒手腕的博客

07-29

1万+

为了方便使用我们也可以,直接使用PythonPycharmSSH连接我们的的小程序服务器端这边我们现在宝塔面板下载id_rsa密钥文件,当然你也可以直接host+password进行连接。上面的教程只实现一个简单的获取天气的功能,但是我们做的是天气机器人,希望实现一个报告天气的功能。我们希望能提供不同用户不同地方的天气,但是发太多的消息会影响其它的用户。兼容提示原机器人的老版本qq-bot仍然可以使用,但新接口的支持上会逐渐暂停,此次升级不会影响线上使用的机器人。.....................

367 条评论

您还未登录,请先

登录

后发表或查看评论

2024 QQ机器人可用框架汇总(1月更新)

m0_60496544的博客

01-14

1551

2024.01 | QQ机器人可用框架汇总(持续更新)汇总目前网络可以的QQ机器人框架,合理利用,做遵纪守法公民,网络安全人人有责

QQ机器人制作教程,超详细.pdf

02-27

QQ机器⼈制作教程,超详细 ⽬录 完整项⽬包括框架、代码和详细使⽤说明可以去链接下载(下载完只需要按照使⽤说明修改⼏处地⽅即可搭建成功!): 最新功能请看第⼆篇⽂章: 前期准备 1、机器⼈框架的下载和配置 (1)⾸先需要⼀个qq机器⼈框架,我使⽤的是基于mirai 以及 MiraiGo 开发的(⾥⾯有开发⽂档)。 windows推荐下载这个,linux我没试过⾃⼰去看⽂档哈。 下载后解压得到三个⽂件。 (2)双击exe⽂件,出现如下窗⼝,⼀直点击确定就⾏了(3次): 然后会⽣成⼀个批处理⽂件,双击它(以后也是直接⽤它) 输⼊0后回车,然后关闭,此时已经在原来的⽂件⽬录下⽣成了配置⽂件config.yml。 (3)双击config.yml,输⼊QQ号和密码(建议使⽤⽆登录保护的qq,否则可能出现滑块验证等问题)。 也可以不输⼊账号密码,直接运⾏那个bat⽂件会出现⼆维码扫码登录,这样更加安全。 再转到最后两⾏,把前⾯的#去掉使其⽣效。(很重要!!很重要!!) (4)配置完后直接双击bat⽂件。等待⼀段时间出现如下窗⼝: 这两个端⼝都应该出现(很重要): 更多问题请看。 补充:窗⼝可能会⼀直出现如下警告(这个不需要管,是正常现象): 窗⼝会⼀直显⽰接收到信息,不要关闭。 2、python的配置和安装 电脑没有python环境或者觉得配置太⿇烦可直接购买exe版本,只要有电脑就可以运⾏。 同样⾥⾯都有使⽤说明,配置更加⽅便 要实现⾃动回复功能的机器⼈需要借助⼀种语⾔,我选择的是python。 所以需要电脑配置好python环境和安装集成开发环境pycharm。安装教程可以看我的⽂章—>>> 当然在实现所有功能之前需要安装⼀些第三⽅库,这个不知道的也可以百度。 具体实现 1、发送信息 这包括发送私聊信息和发送群聊信息。下⾯的函数已经写好了,直接调⽤函数传⼊参数就⾏了。 import socket def send_msg(resp_dict): client = socket.socket(socket.AF_INET, socket.SOCK_STREAM) ip = '127.0.0.1' client.connect((ip, 5700)) msg_type = resp_dict['msg_type'] # 回复类型(群聊/私聊) number = resp_dict['number'] # 回复账号(群号/好友号) msg = resp_dict['msg'] # 要回复的消息 # 将字符中的特殊字符进⾏url编码 msg = msg.replace(" ", "%20") msg = msg.replace("\n", "%0a") if msg_type == 'group': payload = "GET /send_group_msg?group_id=" + str( number) + "&message=" + msg + " HTTP/1.1\r\nHost:" + ip + ":5700\r\nConnection: close\r\n\r\n" elif msg_type == 'private': payload = "GET /send_private_msg?user_id=" + str( number) + "&message=" + msg + " HTTP/1.1\r\nHost:" + ip + ":5700\r\nConnection: close\r\n\r\n" print("发送" + payload) client.send(payload.encode("utf-8")) client.close() return 0 (1)⽐如发送私聊信息(QQ⽤接收者的): resp_dict={'msg_type':'private','number':QQ号,'msg':'你好'} send_msg(resp_dict) (2)发送群聊信息(群号⾃⼰⽤⼀个): send_msg({'msg_type': 'group', 'number': QQ群号, 'msg': '⼤家好'}) (3)当然不⽌发送⽂本信息,还可以发表情、图⽚、⾳乐等。还可以艾特某⼈。 例如:发表情 send_msg({'msg_type': 'group', 'number': QQ群号, 'msg': '[CQ:shake]'}) 发窗⼝抖动 send_msg({'msg_type': 'group', 'number': QQ群号, 'msg': '[CQ:shake]'}) 2、获取群成员列表 import requests def get_group(id): response = requests.pos

爆肝将近 5 万字使用 Python 本地端、服务器端搭建 QQ 智能聊天机器人(新手教程)

唤醒手腕的博客

02-06

5138

01、QQ聊天机器人开发

WebQQ介绍

WebQQ腾讯公司推出的使用网页方式上QQ的服务,特点是无需下载和安装QQ软件,只要能打开WebQQ的网站就可以登录QQ与好友保持联系。具有Web产品固有的便利性,同时在Web上最大限度的保持了客户端软件的操作习惯。

通过WebQQ利用爬虫类的脚本,我们能够接受已登录用户所有好友信息,并且相应的聊天信息。但是2018年12月12日,QQ发布公告,称由于业务调整,webQQ已经于2019年1月1日停止服务,并提示用户下载QQ客户端。

采用Python语言制作方案

制作属于自己的QQ机器人,超详细

weixin_71669458的博客

12-08

9004

前期准备:1.QQ机器人框架的下载和配置

具体实现:1.发送信息;2.接收上报的事件;3.实现简单的自动回复;4.实现智能聊天功能;5.解决多次回复问题

【教程】万字长文保姆级教你制作自己的多功能QQ机器人

热门推荐

xfxuezhang.cn

09-02

2万+

篇幅较长且保姆级详细,建议收藏后慢慢看。

2023最新可用QQ机器人框架整理

rxoba的博客

04-03

1万+

梦幻框架 已成功适配 QQ平台 以及 DoDo平台 ,终于等到你,还好没放弃!本框架高效稳定,支持多协议,多账号,多平台,并且完全免费!DoDo平台基于DoDo开放平台,后期还将适配Q频、Discord等开放平台,敬请期待!简单易上手、毫秒级响应、多协议切换、扩展性强等多个特点,沿用了前辈某Q强大的应用机制,并坚持免费,愿更多的朋友体验到机器人带来的无穷乐趣与精彩。小栗子机器人是一款安卓QQ机器人框架,支持批量登录,拥有极其丰富的API,可通过API进行二次开发,实现众多功能。

用Nonebot2搭建QQ机器人(一):我的学习经历(一)

m0_62223570的博客

10-20

3670

'Nomodulenamed'nonebot.adapters.onebot'报错

nonebot初学

如何制作QQ机器人,我需要详细的步骤

weixin_42589700的博客

02-13

378

要制作 QQ 机器人,你需要按照以下步骤进行:

准备工作:首先,你需要准备一台电脑,并安装 Python 3.x 环境。然后,你需要在 QQ 邮箱中创建一个邮箱账号,并记下你的账号和密码。

安装库:接下来,你需要使用 pip 命令安装 pyqqbot 库,命令如下:

pipinstall pyqqbot

...

【宠物养成】QQ机器人制作教程.pdf

07-20

【宠物养成】QQ机器人制作教程.pdf

QQ机器人制作教程(ono框架+浅陌插件).pdf

07-20

QQ机器人制作教程(ono框架+浅陌插件).pdf

QQ机器人制作教程(DR框架+smile插件).pdf

07-20

QQ机器人制作教程(DR框架+smile插件).pdf

小爆虾QQ机器人制作教程.mp4

07-20

小爆虾QQ机器人制作教程.mp4

Scrapy与分布式开发(3):Scrapy核心组件与运行机制

最新发布

九月镇领将的博客

03-05

920

Scrapy是一个为了爬取网站数据、提取结构性数据而编写的应用框架。它使用Python语言编写,并基于异步网络框架Twisted来实现高性能的爬虫。Scrapy最初是为了页面抓取(更确切地说是网络抓取)而设计的,但它也可以用于获取API返回的数据或通用的网络爬虫。

【python课程作业】python学生成绩管理系统

疯狂屌丝程序员

03-05

616

平台采用B/S结构,后端采用主流的Python语言进行开发,前端采用主流的Vue.js进行开发。给舍友做的课程作业。功能包括:成绩管理、学生管理、课程管理、班级管理、用户管理、日志管理、系统信息模块。

python: 创建目录,类似 ‘mkdir -p‘

qq_40256654的博客

03-05

448

os.makedirs 是 Python 的一个函数,属于 os 模块,用于递归创建目录。如果创建的目录的父目录不存在,os.makedirs 会自动创建这些父目录,类似于 Unix 和 Linux 命令行中的 mkdir -p 命令。这个函数对于需要创建多层嵌套的目录结构时特别有用。函数语法pythonCopy codename: 要创建的目录的路径。

LightGBM高级教程:时间序列建模

Echo_Wish的博客

03-01

488

通过本教程,您学习了如何在Python中使用LightGBM进行时间序列建模。我们加载了时间序列数据并进行了特征工程,然后将数据划分为训练集和测试集,最后使用LightGBM进行模型训练和评估。通过这篇博客教程,您可以详细了解如何在Python中使用LightGBM进行时间序列建模。您可以根据需要对代码进行修改和扩展,以满足特定的时间序列建模需求。接下来,我们将数据划分为训练集和测试集。在进行时间序列建模之前,我们可能需要进行一些特征工程,如滞后特征、移动平均等。最后,我们可以使用测试集来评估模型的性能。

chatgpt怎么对接qq机器人详细教程

05-04

要将 ChatGPT 对接到 QQ 机器人,你需要使用一个中间件来实现。以下是一个简单的教程,帮助你了解如何使用 Python 编写一个 QQ 机器人,并将 ChatGPT 集成到其中。

1. 首先,你需要一个 QQ 机器人账号,可以使用酷 Q 或其他机器人框架来创建一个。

2. 然后,你需要选择一个 Python 的 QQ 机器人框架,例如 cqhttp。

3. 安装 cqhttp 模块,可以使用以下命令:

```

pip install cqhttp

```

4. 创建一个 Python 文件,例如 main.py,在其中导入 cqhttp 模块:

```python

from cqhttp import CQHttp

```

5. 创建一个 CQHttp 对象,并设置机器人的基本信息,例如 QQ 号码和访问令牌:

```python

bot = CQHttp(api_root='http://127.0.0.1:5700',

access_token='your_access_token',

secret='your_secret')

```

6. 编写一个处理消息的函数,例如:

```python

@bot.on_message()

def handle_msg(context):

# 处理接收到的消息

msg = context['message']

# 调用 ChatGPT 处理消息

reply = chat_gpt(msg)

# 发送回复消息

bot.send(context, reply)

```

在这个函数中,你可以使用 ChatGPT 处理接收到的消息,并将回复消息发送回 QQ。

7. 最后,启动机器人:

```python

bot.run(host='0.0.0.0', port=8080)

```

这将启动一个 Web 服务器,等待 QQ 机器人发送请求。

8. 在 ChatGPT 中,你可以使用以下代码来生成回复消息:

```python

def chat_gpt(msg):

# 调用 ChatGPT 处理消息

# ...

# 生成回复消息

reply = 'ChatGPT 回复:' + generated_text

return reply

```

这是一个简单的教程,帮助你了解如何将 ChatGPT 集成到 QQ 机器人中。请注意,这只是一个简单的示例,你需要根据自己的需求进行修改和扩展。

“相关推荐”对你有帮助么?

非常没帮助

没帮助

一般

有帮助

非常有帮助

提交

皮小孩ls

CSDN认证博客专家

CSDN认证企业博客

码龄5年

前端领域新星创作者

94

原创

9115

周排名

188万+

总排名

287万+

访问

等级

1万+

积分

9402

粉丝

6228

获赞

1746

评论

3万+

收藏

私信

关注

热门文章

pycharm安装教程,超详细

671869

html爱心表白代码(最全)

470189

搭建一个QQ机器人叫女友起床

287277

python安装教程(Windows最新)

175924

QQ机器人制作教程,超详细

145624

分类专栏

python实用代码

14篇

python爬虫入门

2篇

安装配置教程

5篇

QQ机器人

3篇

html实例

25篇

表白

14篇

C语言实例

9篇

统计模拟与R语言

6篇

杂文

11篇

html游戏源码

3篇

报错解决方案

3篇

重要知识点+例题详解

4篇

最新评论

python颜值分析

IkerCasillas7:

博主请问json.decoder.JSONDecodeError: Expecting value: line 1 column 1 (char 0)怎么解决

python安装教程(Windows最新)

I_t_is_my_name:

大神,我安装过后程序管理器cmd出来不显示版本,输入程序提示无法初始化设备PRN是怎么回事

pycharm安装教程,超详细

skdoipeioiseo:

哈哈我也是

QQ机器人制作教程,超详细

香菜不吃洋葱:

作者大大,这个发送消息是不是有长度限制?

python安装教程(Windows最新)

程序猿老高:

基于OpenSSL 3.0 搭建Python 3.0 环境:https://blog.csdn.net/gaohuanjie/article/details/135665363

您愿意向朋友推荐“博客详情页”吗?

强烈不推荐

不推荐

一般般

推荐

强烈推荐

提交

最新文章

2023跨年代码(烟花+雪花)

叫ChatGPT用html+css+js写一个圣诞节代码,看看什么样子?

编译原理语法分析器

2022年19篇

2021年55篇

2020年20篇

目录

目录

分类专栏

python实用代码

14篇

python爬虫入门

2篇

安装配置教程

5篇

QQ机器人

3篇

html实例

25篇

表白

14篇

C语言实例

9篇

统计模拟与R语言

6篇

杂文

11篇

html游戏源码

3篇

报错解决方案

3篇

重要知识点+例题详解

4篇

目录

评论 367

被折叠的  条评论

为什么被折叠?

到【灌水乐园】发言

查看更多评论

添加红包

祝福语

请填写红包祝福语或标题

红包数量

红包个数最小为10个

红包总金额

红包金额最低5元

余额支付

当前余额3.43元

前往充值 >

需支付:10.00元

取消

确定

下一步

知道了

成就一亿技术人!

领取后你会自动成为博主和红包主的粉丝

规则

hope_wisdom 发出的红包

打赏作者

皮小孩ls

你的鼓励将是我创作的最大动力

¥1

¥2

¥4

¥6

¥10

¥20

扫码支付:¥1

获取中

扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付元

使用余额支付

点击重新获取

扫码支付

钱包余额

0

抵扣说明:

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

余额充值

5分钟实战QQ机器人教程(保姆级) - 知乎

5分钟实战QQ机器人教程(保姆级) - 知乎首发于代码狂魔切换模式写文章登录/注册5分钟实战QQ机器人教程(保姆级)代码狂魔佛祖保佑 永无BUG先看下目录5分钟实战QQ机器人教程(保姆级)免责声明:本文所涉及资源均来源互联网,仅供个人分享学习,严谨用于非法用途,否则后果自负,且与本文无关!实战在后面,先来理顺一下QQ机器人这个乱七八糟的东西,简直太乱,各种框架各种项目满天飞,所以诞生了下面的QQ机器人的前世今生。想看实战的直接跳到下面的实战目录QQ机器人的前世今生Smart QQQQ机器人最早可以追溯到Smart QQ,也就是WebQQ,参考:https://zh.wikipedia.org/wiki/Smart_QQWebQQ是腾讯于2009年9月15日正式推出的一项服务,该服务可以使用户在不安装QQ软件的情况下使用QQ的部分服务。该功能已于2019年1月1日停止运营[1]。Web QQ顾名思义也就是网页上运行的QQ,这要做机器人那就太简单了,分析HTTP协议就行了,由此诞生了一些列的Web QQ机器人框架,说白了就是封装的HTTP协议而已2019年1月1日,Smart QQ正式停止服务。[3]目前(2021-01-31)在Github上还存在大量SmartQQ的项目,但是大多数都是归档或者失效的。酷Q等各种框架大概2011年左右,有了一个叫做的酷Q的项目,酷Q最开始也是用的Smart QQ的Web协议,Smart QQ关闭之后开始用安卓手机QQ的协议,具体是酷Q Air(免费)用的是手Q国际版,酷Q Pro(付费)用的是安卓Q,所谓实现安卓手机QQ协议就是把QQ.apk大卸八块,反编译找到关键源代码,比如登录之类,数据传输协议抓包查看,通过这些手段自己实现一个QQ客户端的意思,那么自己实现的客户端就可以进行功能扩展,算是制作QQ机器人的基础。因为能用反编译+抓包的方式实现自己的QQ客户端,所以QQ机器人框架雨后春笋般涌现,由此诞生了一些优秀的机器人,比如:但是,好景不长,在2020年8月,腾讯突然封杀这些机器人框架:截至2020.8.2凌晨2:00晨风框架死(腾讯律师函,作者进局子)酷q框架停运(用户 违规非法行为,网站关闭,框架正常,Air一旦重启不可使用 Pro用到授权完为止)暂时可以使用契约框架部分问题,服务器被踹(官方公告即将跑路)暂时可以使用oq机器人停运(消息不明)qr机器人停运(消息不明)mypc框架论坛关闭(消息不明)乾坤框架停运(消息不明)华景机器人(跑路拜拜)ono机器人(作者亲自强调跑路拜拜)mirai框架(群验证消息:已跑路)nanbot框架论坛上不去(不明)轻语机器人(消息不明)柠檬机器人(消息不明)暂时已知部分正常框架QQlight框架小栗子机器人框架qqmax lite CoCo (某些手机robot)目前未知消息机器人软件(不出名)大神机器人(来自百度,目前未知消息)星空机器人(来自百度,目前未知消息)晨风机器人作者被跨省传唤晨风QQ机器人作者被跨省传唤,腾讯的起诉让群管理人人自危Mirai 框架(Java + Kotlin)Mirai 也是一个上面跑路的机器人框架,实现的也是安卓QQ协议,项目地址:https://github.com/mamoe/miraimirai 是一个在全平台下运行,提供 QQ Android 协议支持的高效率机器人库这个项目的名字来源于京都动画作品《境界的彼方》的栗山未来(Kuriyama mirai)CRYPTON以初音未来为代表的创作与活动(Magical mirai)图标以及形象由画师DazeCake绘制看来这个框架的开发者是老二次元了,现在也只剩下开源的mirai了,虽然之前说说mirai作者也跑路了,但还真没看出来哪里跑了,mirai强调并且切实实行了“一切开发旨在学习,请勿用于非法用途”的准则,我估计是这个确保了mirai能安心地继续存在。一切开发旨在学习,请勿用于非法用途mirai 是完全免费且开放源代码的软件,仅供学习和娱乐用途使用mirai 不会通过任何方式强制收取费用,或对使用者提出物质条件mirai 由整个开源社区维护,并不是属于某个个体的作品,所有贡献者都享有其作品的著作权。所以只要不是用于非法盈利之类的用途,是不会收到腾讯的律师函的。机器人标准OneBot上面所说的各种框架都只是机器人的各种实现,每个框架之间接口都不通用,编程语言也不尽相同,想要开发一个自己的机器人,换一套框架所有的代码都要推到重来,所以亟需一个规范统一各个框架,所以OneBot 诞生了,先来看看OneBot 是啥:OneBot 标准一个聊天机器人应用接口标准简单接口简单易懂,可轻松接入。兼容性兼容原 CQHTTP 插件,零负担迁移。兼容原 CQHTTP 插件,这个标准和CQHTTP有啥关系?CQHTTP是酷Q的一个插件,这个插件可以提供HTTP协议的接口供第三方系统调用,这样就和具体语言无关,什么语言都可以调用机器人接口实现自己的逻辑,而且基于CQHTTP 已经实现了很多功能的机器人了,详情见上面优秀机器人框架,为了不让以前所有的优秀代码都要推倒重来,所以OneBot 干脆直接在CQHTTP 的基础之上指定标准,这就是典型的先有实现,后有标准的例子。在这个标准的基础之上,有了各种编程语言的实现,我们称之为生态,如下理论上,基于 OneBot 标准开发的任何 SDK、框架和机器人应用,都可以无缝地在下面的不同实现中切换。当然,在一小部分细节上各实现可能有一些不同,这也是本项目希望推动解决的问题。项目地址平台核心作者备注richardchien/coolq-http-apiCKYUrichardchien可在 Mirai 平台使用 mirai-native 加载Mrs4s/go-cqhttpMiraiGoMrs4syyuueexxiinngg/cqhttp-miraiMiraiyyuueexxiinnggtakayama-lily/onebotOICQtakayamaYiwen-Chan/OneBot-YaYa先驱KanriMiraiGo就是GO语言实现的安卓QQ协议,API很原始,相当于一个类库,go-cqhttp是在MiraiGo的基础之上封装的HTTP协议和Websocket协议接口的框架,得益于GO语言先天的优势(资源占用少,运行简单,协程并发高),总之就是性能高,引用项目原话在关闭数据库的情况下, 加载 25 个好友 128 个群运行 24 小时后内存使用为 10MB 左右. 开启数据库后内存使用将根据消息量增加 10-20MB, 如果系统内存小于 128M 建议关闭数据库使用.本文选择go-cqhttp作为实战框架实战来到了最激动人心的实战环节,先看一下OneBot 标准的接口列表,参考https://github.com/howmanybots/onebot/blob/master/v11/specs/api/public.mdsend_private_msg 发送私聊消息send_group_msg 发送群消息send_msg 发送消息delete_msg 撤回消息get_msg 获取消息get_forward_msg 获取合并转发消息send_like 发送好友赞set_group_kick 群组踢人set_group_ban 群组单人禁言set_group_anonymous_ban 群组匿名用户禁言set_group_whole_ban 群组全员禁言set_group_admin 群组设置管理员set_group_anonymous 群组匿名set_group_card 设置群名片(群备注)set_group_name 设置群名set_group_leave 退出群组set_group_special_title 设置群组专属头衔set_friend_add_request 处理加好友请求set_group_add_request 处理加群请求/邀请get_login_info 获取登录号信息get_stranger_info 获取陌生人信息get_friend_list 获取好友列表get_group_info 获取群信息get_group_list 获取群列表get_group_member_info 获取群成员信息get_group_member_list 获取群成员列表get_group_honor_info 获取群荣誉信息get_cookies 获取 Cookiesget_csrf_token 获取 CSRF Tokenget_credentials 获取 QQ 相关接口凭证get_record 获取语音get_image 获取图片can_send_image 检查是否可以发送图片can_send_record 检查是否可以发送语音get_status 获取运行状态get_version_info 获取版本信息set_restart 重启 OneBot 实现clean_cache 清理缓存快速浏览一遍然后头脑风暴一下你觉得通过这些接口可以干什么:点歌机器人、天气预报机器人、成绩查询机器人、群管理机器人、群聊天敏感词检测机器人、邮件发送机器人......、可玩性足够高了吧实战环境CentOS 7 64位 + go-cqhttp-v0.9.39服务器可以是本地虚拟机也可以是VPS,为什么选Linux,因为更适合生产环境基础配置如果需要其他版本的go-cqhttp版本,请访问发布页:https://github.com/Mrs4s/go-cqhttp/releases下载安装mkdir ~/QQBOT && cd ~/QQBOT

# 下载

wget https://github.com/Mrs4s/go-cqhttp/releases/download/v0.9.39/go-cqhttp-v0.9.39-linux-amd64

# 改名

mv go-cqhttp-v0.9.39-linux-amd64 go-cqhttp

# 赋权

chmod +x go-cqhttp配置文件这是一份最全的配置文档,需要修改的字段uin为QQ号,password为QQ密码,其他的按需修改,每个字段都有注释的,要改自己先看看这个字段干嘛用的web_ui,不知道干嘛的先关掉,HTTP端口为5700,WS端口为6700(此例用HTTP不用WS,所以先把WS的关掉),这些都是默认的不用改,还有个上报端口后面再说,此处先不做解释{

// QQ号

uin:

// QQ密码

password: ""

// 是否启用密码加密

encrypt_password: false

// 加密后的密码, 如未启用密码加密将为空, 请勿随意修改.

password_encrypted: ""

// 是否启用内置数据库

// 启用将会增加10-20MB的内存占用和一定的磁盘空间

// 关闭将无法使用 撤回 回复 get_msg 等上下文相关功能

enable_db: true

// 访问密钥, 强烈推荐在公网的服务器设置

access_token: ""

// 重连设置

relogin: {

// 是否启用自动重连

// 如不启用掉线后将不会自动重连

enabled: true

// 重连延迟, 单位秒

relogin_delay: 3

// 最大重连次数, 0为无限制

max_relogin_times: 0

}

// API限速设置

// 该设置为全局生效

// 原 cqhttp 虽然启用了 rate_limit 后缀, 但是基本没插件适配

// 目前该限速设置为令牌桶算法, 请参考:

// https://baike.baidu.com/item/%E4%BB%A4%E7%89%8C%E6%A1%B6%E7%AE%97%E6%B3%95/6597000?fr=aladdin

_rate_limit: {

// 是否启用限速

enabled: false

// 令牌回复频率, 单位秒

frequency: 1

// 令牌桶大小

bucket_size: 1

}

// 是否忽略无效的CQ码

// 如果为假将原样发送

ignore_invalid_cqcode: false

// 是否强制分片发送消息

// 分片发送将会带来更快的速度

// 但是兼容性会有些问题

force_fragmented: false

// 心跳频率, 单位秒

// -1 为关闭心跳

heartbeat_interval: 0

// HTTP设置

http_config: {

// 是否启用正向HTTP服务器

enabled: true

// 服务端监听地址

host: 0.0.0.0

// 服务端监听端口

port: 5700

// 反向HTTP超时时间, 单位秒

// 最小值为5,小于5将会忽略本项设置

timeout: 0

// 反向HTTP POST地址列表

// 格式:

// {

// 地址: secret

// }

post_urls: {

}

}

// 正向WS设置

ws_config: {

// 是否启用正向WS服务器

enabled: false

// 正向WS服务器监听地址

host: 0.0.0.0

// 正向WS服务器监听端口

port: 6700

}

// 反向WS设置

ws_reverse_servers: [

// 可以添加多个反向WS推送

{

// 是否启用该推送

enabled: false

// 反向WS Universal 地址

// 注意 设置了此项地址后下面两项将会被忽略

// 留空请使用 ""

reverse_url: ws://you_websocket_universal.server

// 反向WS API 地址

reverse_api_url: ws://you_websocket_api.server

// 反向WS Event 地址

reverse_event_url: ws://you_websocket_event.server

// 重连间隔 单位毫秒

reverse_reconnect_interval: 3000

}

]

// 上报数据类型

// 可选: string array

post_message_format: string

// 是否使用服务器下发的新地址进行重连

// 注意, 此设置可能导致在海外服务器上连接情况更差

use_sso_address: false

// 是否启用 DEBUG

debug: false

// 日志等级

log_level: ""

// WebUi 设置

web_ui: {

// 是否启用 WebUi

enabled: false

// 监听地址

host: 127.0.0.1

// 监听端口

web_ui_port: 9999

// 是否接收来自web的输入

web_input: false

}

}上面文件内容保存到~/QQBOT/config.json文件中启动# 普通启动(调试用)

./go-cqhttp

# 后台启动(稳定后用)

nohup ~/QQBOT/go-cqhttp &登录验证恭喜你来到了验证环节,此处可以分为常用IP登录和不常用IP登录,前者可以选择手机号接受验证码验证或者扫码验证,后者就比较麻烦了,需要进行滑块验证扫码或验证码验证 1.发送短信验证码

[2021-01-31 15:40:26] [WARNING]: 2. 使用手机QQ扫码验证.

[2021-01-31 15:40:26] [WARNING]: 请输入(1 - 2):

2

[2021-01-31 15:40:46] [WARNING]: 请前往 -> https://ti.qq.com/safe/verify?_wv=2&_wwv=128&uin=745998763&sig=ns1DNOaJCRd04PfSC7GtvCJ79Qaeb1%eApJ8Y031rrrwJx0ODzAhpJ1fz6ybWiRj%2BBUn <- 验证并重启Bot.

[2021-01-31 15:40:46] [INFO]: 按 Enter 继续....将url拷贝到浏览器选择验证方式验证即可,比较简单滑块验证: 登录需要滑条验证码, 请选择解决方案:

[2021-01-31 19:33:30] [WARNING]: 1. 自行抓包. (推荐)

[2021-01-31 19:33:30] [WARNING]: 2. 使用Cef自动处理.

[2021-01-31 19:33:30] [WARNING]: 3. 不提交滑块并继续.(可能会导致上网环境异常错误)

[2021-01-31 19:33:30] [WARNING]: 详细信息请参考文档 -> https://github.com/Mrs4s/go-cqhttp/blob/master/docs/slider.md <-

[2021-01-31 19:33:30] [WARNING]: 请输入(1 - 3): 滑块验证就比较烦人了,建议参考作者给出的方案:https://github.com/Mrs4s/go-cqhttp/blob/master/docs/slider.md此处我使用的是方案B: 使用专用工具,这个比较简单,方案A是抓包需要注意的是使用专用工具手动完成滑块验证需要快速完成,否则会失败,每次验证的时间只有30s,有时候滑块点不动,需要重来,笔者反复了三次才完成滑块验证。完成滑块验证别高兴太早,还要再次进行上面的扫码或验证码验证,相当于一个二次验证。最后再次启动,如果出现类似下面输出,则说明登录成功[2021-01-31 15:41:37] [INFO]: 当前版本:v0.9.39

[2021-01-31 15:41:37] [INFO]: 用户交流群: 721829413

[2021-01-31 15:41:37] [INFO]: 将使用 device.json 内的设备信息运行Bot.

[2021-01-31 15:41:37] [INFO]: Bot将在5秒后登录并开始信息处理, 按 Ctrl+C 取消.

[2021-01-31 15:41:42] [INFO]: 开始尝试登录并同步消息...

[2021-01-31 15:41:42] [INFO]: 使用协议: iPad

[2021-01-31 15:41:42] [INFO]: Protocol -> connect to server: 157.255.13.77:8080

[2021-01-31 15:41:43] [INFO]: 登录成功 欢迎使用: 尾巴掉了

[2021-01-31 15:41:44] [INFO]: 开始加载好友列表...

[2021-01-31 15:41:44] [INFO]: 共加载 1074 个好友.

[2021-01-31 15:41:44] [INFO]: 开始加载群列表...

[2021-01-31 15:41:45] [INFO]: 收到服务器地址更新通知, 根据配置文件已忽略.

[2021-01-31 15:41:47] [INFO]: 共加载 31 个群.

[2021-01-31 15:41:47] [INFO]: 信息数据库初始化完成.

[2021-01-31 15:41:47] [INFO]: 正在加载事件过滤器.

[2021-01-31 15:41:47] [WARNING]: 事件过滤器启动失败: open filter.json: The system cannot find the file specified.

[2021-01-31 15:41:47] [INFO]: 正在加载silk编码器...

[2021-01-31 15:41:47] [INFO]: 资源初始化完成, 开始处理信息.

[2021-01-31 15:41:47] [INFO]: アトリは、高性能ですから!

[2021-01-31 15:41:47] [INFO]: 正在检查更新.

[2021-01-31 15:41:47] [INFO]: CQ HTTP 服务器已启动: 0.0.0.0:5700检查监听此时检测一下服务器5700端口是否在起监听telnet 你的服务器IP 5700如果不通,则可能是要开防火墙端口,下面两者选其一# 如果是iptables

iptables -A INPUT -p tcp --dport 5700 -j ACCEPT

# 如果是firewall

firewall-cmd --zone=public --add-port=5700/tcp --permanent如果不需要在外网暴露接口则不用开防火墙端口API调用API参考https://github.com/howmanybots/onebot/blob/master/v11/specs/api/public.md建议直接在服务器本地用curl命令调用,下面随便演示几个发送私聊消息user_id填写对方QQ号,message填写消息内容curl 'http://127.0.0.1:5700/send_private_msg?user_id=1073850525&message=你好~'返回的json如下,retcode为0表示成功,赶快看一下对方收到消息没!如果收到了说明搭建成功!{"data":{"message_id":1902493390},"retcode":0,"status":"ok"}获取所有好友信息curl http://127.0.0.1:5700/get_friend_list返回内容如下{

"data": [

{

"nickname": "a'ゞ Qq31107",

"remark": "a'ゞ Qq31107",

"user_id": 31107

},

{

"nickname": "⁢",

"remark": "⁢",

"user_id": 237970

},

{

"nickname": "倘若 ❶",

"remark": "倘若 ❶",

"user_id": 923323

}...

],

"retcode": 0,

"status": "ok"

}其他的接口请参考上面的API文档,笔者试过了大多数读数据接口(get打头)的速度很快,一些写数据接口(set打头)会失败,比如点赞、退出群啥的,其他感兴趣的可自行测试事件上报什么是事件?比如一个好友给你发消息,这就是一个消息事件,上面实现了给别人发消息,那么别人给自己发消息自己怎么知道?答案就是事件上报,机器人会将收到的消息异步发送到指定的端口,由业务逻辑系统处理比如好友给我发一个:听《一千年以后》,机器人将消息事件上报给指定端口,该端口在监听的系统去网易云搜索《一千年以后》的资源,然后调用上面的发消息API发送给好友,这样才能形成一个业务闭环。一个事件必须的字段比如事件发生时间、事件类型、事件内容等等,可以参考OneBot 标准:https://github.com/howmanybots/onebot/blob/master/v11/specs/event/README.md有哪些事件呢?下面列举了所有的事件类型消息事件通知事件请求事件元事件来看一下我们最关心的消息事件私聊消息群消息和通知事件群文件上传群管理员变动群成员减少群成员增加群禁言好友添加群消息撤回好友消息撤回群内戳一戳群红包运气王群成员荣誉变更群成员增加可以干什么?自己细想吧,这里不过多透露了配置业务系统此处简单起见,用nc监听一个端口接收来自机器人的事件上报,在9000端口起一个监听[root@linux-centos-7 ~]# nc -lvvp 9000

Ncat: Version 7.50 ( https://nmap.org/ncat )

Ncat: Listening on :::9000

Ncat: Listening on 0.0.0.0:9000修改上报配置上面机器人的配置文件config.json中,主要配置post_urls,配置成上面我们配置的9000端口:"127.0.0.1:9000":secret// HTTP设置

http_config: {

// 是否启用正向HTTP服务器

enabled: true

// 服务端监听地址

host: 0.0.0.0

// 服务端监听端口

port: 5700

// 反向HTTP超时时间, 单位秒

// 最小值为5,小于5将会忽略本项设置

timeout: 0

// 反向HTTP POST地址列表

// 格式:

// {

// 地址: secret

// }

post_urls: {

"127.0.0.1:9000":secret

}

}重新启动机器人,会发现nc监听的9000端口有如下输出,说明上报配置生效POST / HTTP/1.1

Host: 127.0.0.1:9000

User-Agent: CQHttp/4.15.0

Content-Length: 395

Content-Type: application/json

X-Self-Id: QQ号码

X-Signature: sha1=d62d42e08276b6486031ee4389e742585d9877778

Accept-Encoding: gzip

{"interval":5000,"meta_event_type":"heartbeat","post_type":"meta_event","self_id":745998763,"status":{"app_enabled":true,"app_good":true,"app_initialized":true,"good":true,"online":true,"plugins_good":null,"stat":{"packet_received":146,"packet_sent":138,"packet_lost":0,"message_received":2,"message_sent":0,"disconnect_times":0,"lost_times":0,"last_message_time":1612096769}},"time":1612096774}NCAT DEBUG: Closing fd 5.

注意事项Q: 为什么挂一段时间后就会出现 消息发送失败,账号可能被风控? A: 如果你刚开始使用 go-cqhttp 建议挂机3-7天,即可解除风控除了上面提到的功能,还有事件过滤器之类的可以设置,感兴趣的可以参考https://github.com/Mrs4s/go-cqhttp/tree/master/docs参考酷Q是怎样获取QQ聊天消息的?我与酷Q的故事——纪念QQ机器人业黑暗的一天https://www.moerats.com/archives/802/开源安卓QQ协议库 mirai 使用教程https://github.com/Mrs4s/go-cqhttp发布于 2021-01-31 20:57SmartQQ机器人腾讯 QQ​赞同 165​​22 条评论​分享​喜欢​收藏​申请转载​文章被以下专栏收录代码狂魔佛祖保佑,永无

QQ机器人管理端

AmiyaBot | AmiyaBot

AmiyaBot | AmiyaBot

Skip to content AmiyaBotSearchKMain Navigation主页 简介 项目介绍设计 开发指南 基础指南进阶指南插件开发 适配器 QQ频道机器人QQ群机器人KOOK机器人Mirai-Api-HttpGo-CQHttpComWeChatBot ClientOneBot 11OneBot 12 兔兔-V6 部署开始部署常见问题连接控制台如何更新高级使用使用官方版 下载赞助官方频道GitHubAppearanceGitHubAmiyaBotProgressive Python QQ Bot Framework渐进式 QQ 频道机器人框架,可使用内置适配器对接 QQ 群、OneBot v11/12、KOOK 等机器人平台。开始使用添加兔兔-V6到你的群聊部署兔兔-V6简洁高效采用异步 I/O,摆脱官方 API 繁杂的操作,以更加简洁和可读性更高的代码让你专注于你的业务逻辑。多账号 & 热插拔支持同时创建多个机器人实例,为所有实例注册共享的消息处理方法,以及在多账号实例内动态增删机器人。适配器 & 插件支持通过适配器来更改机器人的服务来源,提供更大的灵活性和可扩展性。支持插件开发方案,将业务和主程序分离,使机器人更加生态化和可定制化。丰富的消息类型内置的 PIL 图像合成模块以及 HTML 转换器,支持合成文字图片或通过渲染 WEB 和 Markdown 合成图片,轻松实现你的绝佳创意。 点击或扫码添加到群聊 点击或扫码添加到频道 MIT & CC BY-NC-SA 4.0 Licensed. More Info Click Here.Copyright © 2024-present vivien8261 粤ICP备2021107697号-1

QQ群机器人怎么制作? - 知乎

QQ群机器人怎么制作? - 知乎首页知乎知学堂发现等你来答​切换模式登录/注册机器人QQ 群机器人编程QQ群机器人怎么制作?想做一个QQ群机器人,当有人在群里@它同时输入一段文字,机器人可以读取这段文字并登录微信发送到某一个指定账号,再将该账号回复的文字返回给QQ群,这个要…显示全部 ​关注者43被浏览312,248关注问题​写回答​邀请回答​好问题 12​添加评论​分享​14 个回答默认排序sky乔碧萝殿下​ 关注这不?简单看完这2个问答,包会,不会问我觉得有用请点个赞支持,可以问我哦!编辑于 2021-12-28 16:19​赞同 39​​2 条评论​分享​收藏​喜欢收起​联动北方科技​ 关注可以利用聊天助理工具进行制作,随便在大平台搜就能找到发布于 2022-01-18 13:55​赞同 1​​添加评论​分享​收藏​喜欢