背景:比特币说好的segwit2x分叉最后却分叉不成,如今算力又不够,于是比特现金想篡位,没一个星期就涨了快10倍,错过这趟快车甚是后悔,于是打算写一个可不定期推送最新消息的微信公众号。既然是利用微信这个平台载体,当然要熟悉微信的api,遂封装了一下。

当然你也可以不看wechat-koa2的代码,直接使用下面的demo,不用百行代码便可轻松实现定制的币圈最新消息推送,后期会推出自动爬取全球各大交易所的最新消息,任何币种上线第一时间通知到位

先放出wechat-koa2 API,后续有时间再根据库币提供的api作封装

插播一个广告: 库币是由一群数字资产爱好者创建而成的一个专注区块链资产的交易平台,创始团队主要来自蚂蚁金服、广发证券等互联网和金融公司,致力于打造世界级的区块链资产交易平台。(跟NEO发放GAS一样,定期每天会根据用户持有的KCS发放鼓励金) 邀请注册链接 -> www.kucoin.com/#/?r=E1UeMq

0x00 wechat-koa2

const config = require('./config')const Koa = require('koa')
const app = new Koa()const Router = require('koa-router')
const router = new Router()const Wechat = require('wechat-koa2')const w = new Wechat(config)// 封装过后的koa-bodyparser
app.use(w.bodyParser())// 微信服务器校验
router.get('/', async(ctx) => {w.serverVerify(ctx)
})// 监听用户发送过来的消息
router.post('/', async (ctx) => {await w.listening(ctx)
}// 具体业务在可全写在这里,注册监听(具体看后文介绍)
// ....
// ....app.use(router.routes()).use(router.allowedMethods())console.log('START: ', `wechat server is listening at ${config.port} ...`)app.listen(config.port)复制代码

0x01 发送币种,查询实时价格和涨幅

这里使用的是sosobtc的接口,当然你也可以使用其他接口,如 zb.com、库币 等

const config = require('./config')const Koa = require('koa')
const app = new Koa()const Router = require('koa-router')
const router = new Router()const Wechat = require('wechat-koa2')const w = new Wechat(config)// 封装过后的koa-bodyparser
app.use(w.bodyParser())// 微信服务器校验
router.get('/', async(ctx) => {w.serverVerify(ctx)
})// 监听用户发送过来的消息
router.post('/', async (ctx) => {await w.listening(ctx)
}// 具体业务 具体业务 具体业务
w.onText(data => {const text = data.Content.toLowerCase()const coinURL = `http://sosobtc.in/api/vi/analysis/coinAllWeb?coin=${text}`w.get(coinURL).then(result => {result = result[0]const coin = result.coinconst webSiteCn = result.webSiteCn || result.webSiteconst change24H = result.change24Hconst close = result.closeconst high = result.highconst low = result.lowif(coin.toLowerCase() === 'btc') {w.replyText(result_2 => {toUser: result_2.FromUserName,fromUser: result_2.ToUserName,content: `当前查询币种: BTC (${webSiteCn})最新价格: ${close}24H涨幅: ${change24H}%最高价格: ${high} USD最低价格: ${low} USD来源: <a href="http://sosobtc.in/soso/kline_list?coin=btc">点击这里</a>`})} else {w.replyText(result_2 => {toUser: result_2.FromUserName,fromUser: result_2.ToUserName,content: `当前查询币种: ${coin.toLowerCase()} (${webSiteCn})最新价格: ${close}24H涨幅: ${change24H}%最高价格: ${high} BTC最低价格: ${low} BTC来源: <a href="http://sosobtc.in/soso/kline_list?coin=${coin.toLowerCase()}">点击这里</a>`})}})
})app.use(router.routes()).use(router.allowedMethods())console.log('START: ', `wechat server is listening at ${config.port} ...`)app.listen(config.port)复制代码

PS: 本人原混于各种币圈,bts 2块3时入手靠信仰一直持到现在(哭...)。目前正在学习区块链(nodejs/python/go),若你也有兴趣,欢迎一起交流探讨

koa2开发微信公众号: 不定期推送最新币圈消息相关推荐

  1. 微信公众号 - Java推送小程序订阅消息给用户

    不啰嗦,我们直接开始! 本文使用体验版小程序进行调试. 一.开发前小程序准备: 1.登录微信公众平台 点开下面链接,使用微信扫码 微信公众平台 然后选择一个小程序并登录 2.在小程序后台找到Appid ...

  2. 微信公众号怎么推送消息_微信公众号发送消息

    A.模板消息发送 模板消息仅用于公众号向用户发送重要的服务通知,只能用于符合其要求的服务场景中,如信用卡刷卡通知,商品购买成功通知等.不支持广告等营销类消息以及其它所有可能对用户造成骚扰的消息. 备注 ...

  3. PHP实现微信公众号主动推送消息

    这篇文章主要介绍了php实现微信公众号主动推送消息的方法,PHP版微信公共平台消息主动推送,突破订阅号一天只能发送一条信息限制,需要的朋友可以参考下. 通过学习借鉴朋友的实现方法进行整理,实现了PHP ...

  4. 微信公众号每日推送(小白网页版配置)

    微信公众号每日定时推送,天气推送(小白网页版配置) 0.提示 1. 前言 2. API接口申请 2.1 微信 2.2 百度 2.3 地区编码 3. 模板内容编写 4. 功能演示 4.1 创建定时早安推 ...

  5. python爬虫如何实现每天爬取微信公众号的推送文章

    python爬虫如何实现每天爬取微信公众号的推送文章 上上篇文章爬虫如何爬取微信公众号文章 上篇文章python爬虫如何爬取微信公众号文章(二) 上面的文章分别介绍了如何批量获取公众号的历史文章url ...

  6. 用户画像在科技期刊微信公众号精准推送中的应用

    闵甜1,2), 孙涛3),赖富饶1,2), 侯湘4) 1)华南理工大学<现代食品科技>编辑部,广东省广州市天河区五山路381号 510640 2)华南理工大学食品科学与工程学院,广东省广州 ...

  7. php 主动推送消息,php实现微信公众号主动推送消息

    通过学习借鉴朋友的实现方法进行整理,实现了PHP版的微信公共平台消息主动推送,分享给大家供大家参考,具体内容如下 此方法是通过模拟登录微信公共平台的方法来实现的. 代码如下: 一.登录接口部分代码 / ...

  8. Java开发微信公众号之被动回复用户消息-回复图片消息

    一.前言 hello小伙伴们,大家好,做微信开发两年了,最近看到微信方面的文章阅读量和关注量上升的比较快速,激发了我满满的动力啊,所以就滋生了一个想法,从头开始整理一下微信公众号开发,写一个简易的教程 ...

  9. 微信公众号信息推送实现业务解耦

    序 最近第三方服务需要增加微信模板信息推送能力,要与业务系统解耦.微服务架构的springCloud下第三方服务增加能力. 一.技术选型 看了下微信公众号的信息推送开发文档,发现不难,就是一个个接口对 ...

最新文章

  1. Can't create table './store/#sql-b2c_1a.frm' (errno: 150)解决方法
  2. android水平滚动条,Android使用HorizontalScrollView实现水平滚动
  3. sizeof和strlen()区别
  4. Go语言实时GC - 三色标记算法
  5. min里所有的参数都不存在_高中生物所有的考点难点,其实都在你不仔细看的课本里,必修1-3超强记忆手册!...
  6. GBK、GB2312、GB18030
  7. C#与C/C++的交互zz
  8. Angularjs切换网站配色模式简单示例1(切换css文件)
  9. leetcode题解70-爬楼梯
  10. 怎么在Java里辨别小数_求教java中如何判断一个数是不是小数,求详细代码及解释...
  11. 面试题 17.16. 按摩师
  12. mysql jsp分页技术_一个非常简单的分页技术MYSQL+JSP 利用了mysql的LIMIT参数
  13. PHP+jQuery实现翻板抽奖
  14. 苹果开发者账号那些事儿(三)
  15. linux赋权限2770,Linux权限:SUID,SGID以及粘滞位
  16. Diamond简介和快速应用
  17. 步进电机的正反向旋转c语言编程,实现步进电机自动正反转程序怎么写
  18. allegro铜皮倒圆角
  19. 聂微东:《暗时间》读书笔记与读后感 - 博客 - 伯乐在线
  20. C语言求等腰梯形面积,几道C语言的题目!

热门文章

  1. php在线升级功能,​在线升级三大功能 哪吒V变得更聪明
  2. root比例修改器,免root修改器修改数值
  3. Ceph 存储池命令 以及 数据压缩
  4. 微信小程序的基础知识点汇总
  5. 吃一堑长一智!这些年Java面试的那些套路
  6. 如何确定计算机的负载算是高负载
  7. Jfree实现统计图
  8. App打造自定义的统计SDK, 是时候和友盟说分手了
  9. 【Vivado那些事】Xilinx 7系列时钟结构详解
  10. 电脑入门必懂的常识(一)