介绍
wechat-webclient 是一个 npm 包,通过它可以实现微信网页版的控制。它的使用可以使得我们通过 JavaScript 控制微信网页版,发布消息,发送好友请求等,同时也可以在微信网页版上实现网页爬虫。
安装
由于是一个 npm 包,所以在安装之前需要先确认本机上已经安装了 Node.js。
在命令行窗口输入以下命令来安装 wechat-webclient:
npm install wechat-webclient --save
例子
下面是一段简单的代码示例,使得机器人自动回复聊天信息。
-- -------------------- ---- ------- ----- - ------- - - ---------------------------- ----- --- - --- --------- ----- --------------- --- -------------- ------ -- - -- -------- - ----- --- - --------------------------------------------------- - --------------------------- ----------------- - --- --------------- -- -- - ---------------- -- ---------- --- ----------------- ----- ------- -- - -- ---------------- - ------- - ----- ------- - --------------- -------------------- --------- -- ------------------------- --- --- - ----- -------------------- - ---- -- ----------------------- --- --- - ----- ------------------- ----- ----------- - --- ------------
开发
以下是关于 wechat-webclient 的一些深度的开发指南。
登录
使用 wechat-webclient 需要先登录你的微信账号。在开始之前需要先获取登录二维码,并通过手机将其扫描,扫描之后会在控制台中输出登录成功,如下所示:
bot.on('login', () => { console.log('log in success'); });
获取个人信息和联系人列表
在登录之后需要获取个人信息和联系人列表。
const mySelf = await bot.Myself.contact(); console.log('我自己的名字:', mySelf.name()); const contactList = await bot.Contact.loadAll(); console.log('我的联系人:', contactList.map(contact => contact.name()).join(', '));
其中,bot.Contact
返回一个 Contact 类的实例,它代表了一个联系人,包含了联系人的许多信息。在上面的例子中,我们使用了 bot.Contact.loadAll()
来获取全部的联系人列表。
发送消息
我们可以在 wechat-webclient 中发送各种类型的消息,比如文本消息、图片消息、视频消息等等。
-- -------------------- ---- ------- ----- ----------- - ----- ----- ------- - ----- ------------------ ----- ----------- --- -- ---------- - ---------------------- ------------- ------- - ----- -------------------
我们可以通过 bot.Contact.find()
根据联系人的名字来查找联系人实例。然后使用 contact.say()
方法来向该联系人发送消息。
如果需要发送图片消息,需要指定图片的绝对路径。
-- -------------------- ---- ------- ----- ----------- - ----- ----- ------- - ----- ------------------ ----- ----------- --- -- ---------- - ---------------------- ------------- ------- - ----- ---- - --------------------- ----- --------------- ---------------
监听事件
我们可以通过监听事件的方式在 wechat-webclient 中实现自动回复或者自动发送某些消息。
-- -------------------- ---- ------- ----------------- ----- ------- -- - -- ---------------- - ------- - ----- ------- - --------------- -------------------- --------- -- ------------------------- --- --- - ----- -------------------- - ---- -- ----------------------- --- --- - ----- ------------------- ----- ----------- - ---
我们使用 bot.on()
来监听事件,例如 message
事件表示收到了一条消息。在 message
事件的回调函数中,我们可以通过 message.text()
获取到消息的文本内容,通过 message.self()
判断是否是自己发送的消息。最后,我们可以使用 message.say()
回复对方的消息。
结论
wechat-webclient 可以让我们通过简单的 JavaScript 代码实现微信网页版的控制,它可以代替人工实现自动回复、群发等功能,还可以通过加入打码平台来实现网页爬虫。
在使用之前,我们需要通过二维码登录微信网页版,获取到联系人列表和个人信息。然后可以使用 bot.Contact
代表联系人,使用 contact.say()
发送各种类型的消息。最后,在实现自动回复或者自动发送消息时,我们需要监听 message
事件,使用 message.say()
回复对方的消息。
参考资料
来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/6006710a8dd3466f61ffe043