前言

不知道大家最近有没有被python版的《微信每日说》刷屏呢,他可是霸占了githubpython热门快两周了。我们前端的小伙伴是不是也看着有点眼馋呢,因为毕竟是不那么熟悉的python语言,学起来和用起来肯定没有那么舒服。想想要是用我们熟悉的js语言做一个属于自己的哄女友神器是不是很开心呢!?

哄女友我们前端开发人员也是很认真的,自动哄女友(基友)神器我们也可以做!

项目介绍

其实《微信每日说》小项目早在三月份都已经做好了,当时也发布了一篇文章《用Node+wechaty写一个爬虫脚本每天定时给女(男)朋友发微信暖心话》,有看过的朋友应该有印象的。由于上次分享的文章比较偏向于技术,被朋友说可能不太适合小白用户使用,在他的建议下呢,我又重新整理了一下现有代码,和制作了教学视频,方便任意人群的使用。

同时呢我也维护了两套项目,一个是本项目《微信每日说》适合入门人群,操作简单,配置方便,上手容易。另一个项目是《微信个人秘书》,功能较多,涵盖自动加群、自动加好友、自动回复、可设置定时提醒等功能。由于涉及到数据库的操作,所以主要面向有编程经验的群体,有兴趣的小伙伴可以参考《使用koa2+wechaty打造个人微信小秘书》

本文介绍项目是用node和wechaty微信网页接口开发的一款小工具,可以定时给女朋友发每天的天气情况,天气提醒,每日一句。通过配置机器人api后还可以实现微信机器人自动陪女朋友聊天。

项目地址

github: https://github.com/gengchen528/wechatBot

看看前端的小伙伴能不能把这个项目送上热门呢 哈哈

效果预览

在三步走教学之前,先放上效果看一下

everyday-1.png

everyday-2.png

可以看到在指定的时间就会收到发送的消息,包括天气信息,天气提醒,还有你们在一起多少天了。当开启机器人后,女朋友就可以和小助手对话了,不过目前开源机器人的api都不是非常的智能,匹配的语义可能不是那么准确。所以有时候女朋友生气了,千万记得不要开启机器人,不然回答的不对是会被女朋友暴打的?!

此项目前期使用的是图灵机器人,但是最近图灵机器人做了限制,没有认证的用户不允许调取API,认证的用户每天也只有100条,这就很鸡肋了,女朋友还没哄过瘾呢就被限制了,这是很可怕的(手动滑稽)!所以现在更换了一个天行机器人的api接口,这个接口没有太多限制,送的调用次数也足够用,在项目中已经开放给大家用了,不过还是建议大家自己申请一个账号比较好,因为这个机器人可以自定义名称之类的,也可以设置自己需要的回复内容。

视频教程

移步:《三步教你用Node做一个微信哄女友神器》

三步走教程

一、安装node

node官网:https://nodejs.org/zh-cn/

选择系统对应版本node下载安装,win建议.msi包安装,只需一直下一步即可,其他系统同理;

windows下安装node步骤详细参考 https://www.cnblogs.com/liuqiyun/p/8133904.html

Mac下安装node详细步骤参考 https://blog.csdn.net/qq_32407233/article/details/83758899

Linux下安装node详细步骤参考 https://www.cnblogs.com/liuqi/p/6483317.html

everyday-3.png

安装完成后,按住键盘的shift+鼠标右键,选择在此处打开命令窗口。在命令行执行node -v出现版本号说明安装成功

everyday-4.png

二、下载代码并配置

代码地址:https://github.com/gengchen528/wechatBot

  • 访问此地址,直接下载zip包到本地桌面,然后解压;

everyday-5.png

  • 进到目录中,找到config目录下的index.js文件

everyday-6.png

everyday-7.png

  • 选中index.js文件,右击选择打开方式,没有安装代码编辑器的可以用记事本打开。有代码编辑器的直接用代码编辑器打开,建议非开发人员可以下载一个notepad++,下载链接链接:https://pan.baidu.com/s/1mWdEOaTQ1D6kihQveN1JHw 密码:fn9g,开发人员就各自发挥吧,相信每个人都有自己用的比较舒服的编辑器我就不推荐了

![everyday-9.png
](https://upload-images.jianshu...

  • 配置文件中需要修改的地方,女朋友的微信备注姓名NAME必须要换一下,不然你发给我就不好了?,微信昵称NICKNAME最好也写一下,你和女朋友的纪念日MEMORIAL_DAY就不用说了,也要改一下。
  • 如果要发送天气信息,女朋友所在城市CITY肯定也是必须修改的,地区LOCATION不知道怎么拼写的话,我建议可以查一下墨迹的官网https://tianqi.moji.com/weather/china/
  • 在墨迹天气找到对应地区的天气后,查看一下网页地址栏,绿色标记的拼音填入CITY,红色标记的拼音填入LOCATION

everyday-11.png

  • 每天发送的时间SENDDATE,这里的规则可以参见schedule目录下的index.js文件。这里0 06 8 * * *代表的是每天的早上8点06分0秒,我们通常只需配置前三个就可以了。
  • 如果需要开启机器人聊天的话,需要把AUTOREPLY设置为true,这里我放弃了图灵机器人,原因上面也说了,改用了天行机器人,但是不要抱太大希望,它并不是那么智能?。目前由于我自己账号的api次数还比较多,就在项目代码中开放给大家使用了,这里就不放出来,下载代码后只要修改一下AUTOREPLY就可以自动回复了。
// 配置文件
module.exports = {
    // 基础定时发送功能配置项(必填项)
    NAME: 'Leo_chen', //女朋友备注姓名
    NICKNAME: 'Leo_chen', //女朋友昵称
    MEMORIAL_DAY: '2015/04/18', //你和女朋友的纪念日
    CITY: 'shanghai', //女朋友所在城市
    LOCATION: "pudong-new-district", //女朋友所在区(可以访问墨迹天气网站后,查询区的英文拼写)
    SENDDATE: '0 06 8 * * *', //定时发送时间 每天8点0分0秒发送,规则见 /schedule/index.js
    ONE: 'http://wufazhuce.com/', ////ONE的web版网站
    MOJI_HOST: 'https://tianqi.moji.com/weather/china/', //中国墨迹天气url

    //高级功能配置项(非必填项)
    AUTOREPLY: true, //自动聊天功能 默认关闭
    AIBOTAPI: 'http://api.tianapi.com/txapi/robot/', //天行机器人API 注册地址https://www.tianapi.com/signup.html?source=474284281
    APIKEY: '天行机器人apikey', //天行机器人apikey
}

三、开始运行程序

配置完成好文件别忘记保存了,保存好就回到项目的主目录吧。这时候win系统的话就按住键盘的shift+鼠标右键,选择在此处打开命令窗口。

  • 然后输入npm install

everyday-12.png

  • 等待安装完成后输入npm run start,这时会下载一个文件,因为比较大,所以要多等一下,等待出现二维码的时候就可以拿出手机微信扫一扫登录了。接下来就是一顿神对话了?

everyday-13.png

everyday-14.png

  • 如果执行npm run start遇到失败的话,先执行npm install wechaty-puppet-puppeteer@^0.17.14 --no-save然后再执行npm run start

常见问题处理

  • 先检查node版本是否大于10
  • 存在package-lock.json文件先删除
  • 删除node_modules后重新执行npm install
  • 也可添加小助手微信后,发送'加群'进入微信每日说技术交流群
  1. 我的微信号无法登陆

    从2017年6月下旬开始,使用基于web版微信接入方案存在大概率的被限制登陆的可能性。 主要表现为:无法登陆Web 微信,但不影响手机等其他平台。 验证是否被限制登陆: https://wx.qq.com 上扫码查看是否能登陆,不能登录的话,那你可能就无法用这个工具了。 更多内容详见:

    Can not login with error message: 当前登录环境异常。为了你的帐号安全,暂时不能登录web微信。

    [[谣言] 微信将会关闭网页版本](https://github.com/Chatie/wec...

    新注册的微信号无法登陆

  2. 执行npm run start时无法安装puppet-puppeteer&&Chromium

    • Centos7下部署出现以下问题
![everyday-15.png](https://upload-images.jianshu.io/upload_images/6708772-37615e7661029768.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)

 
    问题原因:[https://segmentfault.com/a/1190000011382062](https://segmentfault.com/a/1190000011382062)
    
    解决方案:
    
        #依赖库
        yum install pango.x86_64 libXcomposite.x86_64 libXcursor.x86_64 libXdamage.x86_64 libXext.x86_64 libXi.x86_64 libXtst.x86_64 cups-libs.x86_64 libXScrnSaver.x86_64 libXrandr.x86_64 GConf2.x86_64 alsa-lib.x86_64 atk.x86_64 gtk3.x86_64 -y
    
        #字体
        yum install ipa-gothic-fonts xorg-x11-fonts-100dpi xorg-x11-fonts-75dpi xorg-x11-utils xorg-x11-fonts-cyrillic xorg-x11-fonts-Type1 xorg-x11-fonts-misc -y

3.windows下,下载puppeteer失败

执行一下npm install wechaty-puppet-puppeteer@^0.17.14 --no-save

注意

本项目属于个人兴趣开发,开源出来是为了技术交流,请勿使用此项目做违反微信规定或者其他违法事情,请勿商用。建议使用小号进行测试,有被微信封禁网页端登录权限的风险(客户端不受影响),请确保自愿使用。因为个人使用不当导致网页端登录权限被封禁,均与作者无关,谢谢理解

最后

如果有微信号无法登录和有技术问题需要交流,可以加我的微信小助手后发送加群,会自动发送交流群的二维码,同时此小号有更多高级功能等待你的发现。(注:添加好友后会在20s内自动通过)
everyday-16.png

赶快亲自试一试吧,相信你会挖掘出更多好玩的功能

另外我的公众号已经接入微软小冰,关注后发语音会有小姐姐的声音陪你聊天,也可以和她文字聊天,有兴趣可以试试看,单身的欢迎来撩

everyday-17.png


kiven
33 声望3 粉丝

用跑步来释放自己的天性,跑起来,动起来,爱上跑步是我今年最大的收获。前端开发是目前的工作,下一步往着全栈工程师进发!