微信机器人 wechaty 针对个人微信对接chatterbot +django+drf 实现 自动回复 接入自己api接口

之前发表过chatterbot 的自定义api本人的流程 但是有粉丝或游客私信我 怎样对接自己个人微信 现在统一回复下 自己的心得流程 实现等

在写代码之前我先表述下 之前个人微信接口 使用itchat 等 在使用这类的前提是可以 登录网页版微信 网页版微信登录链接 itchat原理就是一种爬虫 获取绘话信息处理并返回自定义信息(跑远了…) 要想获取个人微信中的对话 必须登录 才能自定义一些逻辑啥的

前几天自己写了能实现对接chatterbot的api接口

1 首先我们要绕过登录验证 能成功登录

2 我是用node.js(对用开发来说这个学习起来还好…)+wechaty这是前端 后端django chatterbot等 参考项目 参考资料

3 点击参考资料下载 配置什么的可以点击参考资料 我现在主要讲解下 微信对接api

在这里插入图片描述

项目中node配置之后安装包时候可能会有些问题(除了那个文档之外的命令)

npm config set registry https://registry.npm.taobao.org
npm config set disturl https://npm.taobao.org/dist
npm config set puppeteer_download_host https://npm.taobao.org/mirrors
set WECHATY_LOG=verbose
set WECHATY_PUPPET=wechaty-puppet-wechat

目录中index.js 我只添加了一部分代码 用于调用自己的后台接口 其中 reply = await superagent.getMonekyReply(content);调用自己的获取后台的方式

// 监听对话
async function onMessage(msg) {const contact = msg.talker(); // 发消息人const content = msg.text().trim(); // 消息内容const room = msg.room(); // 是否是群消息const alias = await contact.alias() || await contact.name(); // 发消息人备注const isText = msg.type() === bot.Message.Type.Text;if (msg.self()) {return;}if (room && isText) {// 如果是群消息 目前只处理文字消息const topic = await room.topic();console.log(`群名: ${topic} 发消息人: ${await contact.name()} 内容: ${content}`);} else if (isText) {// 如果非群消息 目前只处理文字消息console.log(`发消息人: ${alias} 消息内容: ${content}`);if (content.substr(0, 1) == '?' || content.substr(0, 1) == '?') {let contactContent = content.replace('?', '').replace('?', '');if (contactContent) {let res = await superagent.getRubbishType(contactContent);await delay(2000);await contact.say(res);}} else if (config.AUTOREPLY && config.AUTOREPLYPERSON.indexOf(alias) > -1) {// 如果开启自动聊天且已经指定了智能聊天的对象才开启机器人聊天\if (content) {let reply;if (config.DEFAULTBOT == '0') {// 天行聊天机器人逻辑reply = await superagent.getMonekyReply(content);console.log('Monkey机器人回复:', reply);} else if (config.DEFAULTBOT == '1') {// 图灵聊天机器人reply = await superagent.getTuLingReply(content);console.log('图灵机器人回复:', reply);} else if (config.DEFAULTBOT == '2') {// 天行对接的图灵聊reply = await superagent.getTXTLReply(content);console.log('天行对接的图灵机器人回复:', reply);}try {await delay(2000);await contact.say(reply);} catch (e) {console.error(e);}}}}
}

superagent->index.js

const MONKEYAPI = 'http://127.0.0.1:8000/'; // 自建1.0接口apiasync function getMonekyReply(world) {// 获取自建机器人信息let url = MONKEYAPI + 'testbot/';try {let content = await superagent.req({url, method: 'POST', data: {"text":world}});console.info(content);c_text = content.textc_replace_text = c_text.replace(/'/g, `"`)c_json= JSON.parse(c_replace_text)obj = c_json.wordsreturn obj;//if (content.code === 200) {// let obj = content["text"]["worlds"][0];//console.info('获取成功', obj);//return obj;//}} catch (err) {console.log('请求失败', err);}
}
module.exports = {XXX,getMonekyReply
};
superagent ->superagent.js中修改
.set('Content-Type', 'application/json')
大致项目改了这几处 效果如下 api对接一个简单的天气爬虫…

在这里插入图片描述

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/10282.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

i排版html居中,i排版-i排版官网:微信公众号文章编辑软件-禾坡网

i排版是一款排版效率高、界面简洁、样式原创 ipaiban i排版功能介绍 1、格式清除与一键排版 “i排版”可以进行全文编辑,整篇文档复制进编辑器后,需先用橡皮擦清除格式,后点击一键排版(默认首行不缩进,照片居中显示哦~…

分享微信怎么做公众号报名系统_微信公众号报名链接怎么做

我们现在介绍的是利用开发好的第三方,可以在几分钟内创建出自己的微信公众号报名系统,链接到自己的公众号菜单上,让别人通过点击公众号菜单,在弹出的页面上直接填写信息进行报名,报名信息会自动汇总到后台的表格&#…

微信文章编辑的html在哪里,微信公众号的文章编辑界面在哪里?怎么编辑排版? | 微信公众号指南...

今天给大家介绍公众号文章编辑页面在哪里,怎么编辑排版,怎么推送文章。 申请了微信公众号后怎么发布文章?公众号的文章编辑页面在哪里?部分刚接触公众号运营的小伙伴是不太了解公众号后台功能的,今天就给大家介绍公众号文章编辑页…

【微信】公众号:免费注册个人公众号 公众号设置手册

目录 一、前言 二、普通订阅号(个人注册) 三、普通订阅号(公众号设置) 1、登录微信公众平台 2、【公众号设置】账号详情 (1)公开信息:修改个人微信公众号头像 (2)…

小编必看,教你如何使用微信公众号编辑器快速排版精美文章

对于小编而言,写作就是每天的日常,图文排版是公众号的形象,也是新媒体运营小编必须掌握的技能。一篇文章除了内容优质之外,排版也是非常重要的,好的排版才能让读者有更好的阅读体验。俗话说,工欲善其事,必先…

微信公众号的代码块插入,及一键排版

微信公众号:颜家大少 本文所用排版工具:http://md.aclickall.com . 微信公众号的排版问题 前段时间,准备在微信公众号上写文章时,却发现公众号居然连个最基本的插入代码块的功能都没有。 很纳闷,难道微信的开发者不用写…

注册公众号(企业类型的订阅号)参考步骤

注册企业类型的订阅号(公众号)所需的资料(仅供参考) 1. 一个未被微信公众号平台、微信开放平台、个人微信绑定的邮箱、邮箱密码 2. 企业信息:企业名称、企业营业执照注册号/统一社会信用代码 3. 公众号管理员姓名、手机号码、身份证号码 …

关于微信公众号文章编辑器不能直接编辑html样式的处理方法

1、微信的后台是不支持html编辑的;你可以先在其他的编辑器里面编辑好了以后,复制到微信编辑器里面;这样既可以保持原来的格式,还可以自由设置自己的喜欢的格式。 比如我有一大大大大大大大大大大大段话,不想让他在页面…

微信公众号发布svg排版文章

svg代码&#xff1a; 页面初加载只显示一张图片&#xff0c;点击后自动展开显示一张长图页面初加载只显示一张图片&#xff0c;点击后自动展开显示一张长图页面初加载只显示一张图片&#xff0c;点击后自动展开显示一张长图 <!DOCTYPE html> <html lang"en&quo…

微信公众号推文(编辑+排版教程)

目录 一、登录公众号二、打开秀米网站&#xff08;最好用谷歌浏览器&#xff09;1、新建图文2、大标题字号16、小标题字号14 加粗3、段落文字首行缩进、字间距2、行间距1.8、页边距104、重点句子加粗、换颜色5、结尾前添加分割线&#xff0c;分割线前后加空格6、添加二维码7、完…

免费chatGTP-3.5 后续接口持续开发中

网址&#xff1a;www.wanwu.chat 邀请码&#xff1a;vn1F 输入邀请码后可以免费获得20次使用次数&#xff01;&#xff01;&#xff01;&#xff01; 后续不定期赠送礼包码&#xff0c;免费赠送使用次数&#xff01;&#xff01;&#xff01; 次数有限&#xff0c;先到…

如何用 ChatGPT 一句话生成 Web 应用?

原型系统的开发对很多不会编程的人来说&#xff0c;原本确实是一道门槛&#xff0c;而且看似难以逾越。而现在&#xff0c;障碍突然间就消失了。 插件 ChatGPT 现在有了一个内容比较丰富的插件系统&#xff0c;而且 Plus 用户已经不再需要填表申请后漫长等待&#xff0c;直接就…

chatGPT对于一个python初学者有什么用?

目录 一、前言二、开始请教三、总结 一、前言 我最近开始学习python&#xff0c;感觉python整体语法啥的还是很好学的&#xff0c;但是正是由于太简单&#xff0c;且我还有多年的java编程基础&#xff0c;便很难沉下心去学习。想到之前看到的一段话&#xff1a;人性总是趋利避…

用二十段话介绍下ChatGPT

用二十段话介绍下ChatGPT-3.5 ChatGPT是一个基于GPT-3.5架构的大型语言模型。它由OpenAI开发&#xff0c;是一种强大的自然语言处理工具。ChatGPT可以理解和生成人类语言&#xff0c;可以应用于许多不同的领域。它可以帮助人们进行自然语言的翻译、摘要、问答等任务。ChatGPT拥…

用好ChatGPT,毕业直接走上人生巅峰

毕业论文交上去了&#xff0c;学分也攒齐了。考研没上岸的准毕业生们接下来要面对的不是惨烈的秋招&#xff0c;就是蹲家准备二战。生活终于要对各位小可爱们动手啦&#xff01; 不想默默承受社会的毒打&#xff1f; 不愿在屡战屡败屡败屡战的压力下秃头&#xff1f; 想必各位…

【ChatGPT】阿里版 ChatGPT 突然官宣意味着什么?

Yan-英杰的主页 悟已往之不谏 知来者之可追 C程序员&#xff0c;2024届电子信息研究生 目录 阿里版 ChatGPT 突然官宣 ​ ChatGPT 技术在 AI 领域的重要性 自然语言生成 上下文连续性 多语言支持 ChatGPT 未来可能的应用场景 社交领域 商业领域 ​编辑 医疗领域…

中国互联网已经渐渐变成创新荒漠

最近在chatGPT高调宣布以后&#xff0c;我思索半天发现近几年&#xff0c;国内互联网已经再没有眼前一亮的创新&#xff0c;难道国内真变成只会抄作业的坏学生了&#xff0c;我觉得造成这样的状况&#xff0c;可能是由多方面因素造成的&#xff0c;主要有以下几点原因&#xff…

“署名ChatGPT”:人类正经历第一次AI著作权冲击

1971年&#xff0c;美国南加利福尼亚大学法律哲学教授克里斯托弗斯通&#xff0c;发表了一篇名为《树木拥有法律地位吗&#xff1f;》的文章。 这篇文章中明确表示&#xff0c;自然物的权利应该由它们的代理人来实施。一般来说&#xff0c;要由人或者组织、法人、政府来代表自然…

chatgpt赋能Python-python_ps图片

Python PS图片的SEO指南 Python在数字图像处理中广泛应用。其中&#xff0c;Photoshop文件&#xff08;psd&#xff09;是一种常见的图像文件格式。但是&#xff0c;如何在搜索引擎上优化Python PS图片并提高其排名仍然是一个挑战。 什么是Python PS图片&#xff1f; Python…

国内主流平台QMT和Ptrade哪个软件更好用?应该怎么选择?

国内主流的量化平台有&#xff1a; 迅投QMT和恒生Ptrade。 这两个软件都是挺好的&#xff0c;因为针对不同的投资者开发了不同的权限。 ①、如果您不会编写程序的可以使用普通版本的&#xff0c;支持篮子交易&#xff0c;网格交易&#xff0c;条件单等等&#xff0c;相对来说不…