比特派app官方链接是什么|qq群机器人
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赞同 99282 条评论分享喜欢收藏申请转载文章被以下专栏收录程序员实验室发布、收录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赞同 5134 条评论分享喜欢收藏申请
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赞同 16522 条评论分享喜欢收藏申请转载文章被以下专栏收录代码狂魔佛祖保佑,永无
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赞同 392 条评论分享收藏喜欢收起联动北方科技 关注可以利用聊天助理工具进行制作,随便在大平台搜就能找到发布于 2022-01-18 13:55赞同 1添加评论分享收藏喜欢