如何开发一款微信报价机器人-51bitquant数字货币量化视频课程

in #cn5 years ago

如何制作微信数字货币报价行情机器人视频如下:https://www.bilibili.com/video/av55523107/

鉴于微信的信息提醒功能比较及时,人们在微信花费的时间上也比较多,借助微信的开发一款消息提醒的机器人会更加方便。

另外我们也经常在微信群上看到各种微信机器人,有陪聊天的,还有行情报价的机器人等等,今天我们教大家开发一款微信报价的机器人人。

准备工作和要求
首先要求安装python的开发环境,如果还有安装开发环境的,建议观看之前的视频,Mac用户请观看这个视频:https://www.iqiyi.com/v_19rsajkutg.html
Window的用户请观看这个视频:https://www.iqiyi.com/v_19rsak4hnk.html

其次,还需要准备两个微信号, 其中一个微信必须是老号作为登录账号,为发送信息使用,最好要经过实名认证, 另一个微信号作为接收信息,新号老号都可以. 准备工作准备好后,我们开始进行写代码。

安装wxpy
pip install -U wxpy

或者

pip install -U wxpy -i "https://pypi.doubanio.com/simple/"

wxpy的文档和代码地址如下,大家可以去参考下

wxpy github地址: https://github.com/youfou/wxpy
wxpy文档地址: https://wxpy.readthedocs.io/zh/latest/
from wxpy import * # 导入wxpy框架
import requests # 引入requests网络请求框架

bot = Bot(cache_path=True, console_qr=-2) # 初始化机器人.

# 查找好友.

bitquant = bot.friends().search('51bitquant')[0] # 搜索昵称为51bitquant的朋友
bitquant_signal_group = bot.groups().search('51bitquant信号群')[0] # 搜索群名字为51bitquant信号群的群,该群要求添加到通讯录才可以找到。

print(bitquant)
print(bitquant_signal_group)

发送信息, 通过send的方法

bitquant.send("Hello world") # 当前登录的这个微信账号,给他发送信息. 给bitquant发送信息

以火币的交易所行情为例

BASE_URL = 'https://api.huobi.br.com'
currencys_url = BASE_URL + '/v1/common/currencys'
resp = requests.get(currencys_url) # 获取火币的所有币种
currencys = []
if resp.status_code == 200:
currencys = resp.json()['data']

print(currencys)

btcusdt

bchusdt --> bchbtc --> bcheth

def request_symbol_price(symbol, sender):

try:
    resp = requests.get(BASE_URL+'/market/detail/merged'+'?symbol='+symbol+'usdt')
    if resp.status_code == 200:
        tick = resp.json()['tick']
        price_str = "火币"+ symbol+'/usdt'+'价格为: ', tick['bid'][0]
        print(price_str)
        sender.send(price_str)
except Exception as error:
    try:
        resp = requests.get(BASE_URL + '/market/detail/merged' + '?symbol=' + symbol + 'btc')
        if resp.status_code == 200:
            tick = resp.json()['tick']
            price_str = "火币" + symbol + '/btc' + '价格为: ', tick['bid'][0]
            print(price_str)
            sender.send(price_str)
    except Exception as error:
        try:
            resp = requests.get(BASE_URL + '/market/detail/merged' + '?symbol=' + symbol + 'eth')

            if resp.status_code == 200:
                tick = resp.json()['tick']
                price_str = "火币" + symbol + '/eth' + '价格为: ', tick['bid'][0]
                print(price_str)
                sender.send(price_str)
        except Exception as error:
            pass

@bot.register([bitquant, bitquant_signal_group], msg_types=TEXT)
def receive_message(msg: Message):
txt = msg.text
sender = msg.sender
print(msg.sender)
print(msg.text)
if txt in currencys:
request_symbol_price(txt, sender)

embed() # 启动机器人,让机器人让保持运行

以上就是微信报价行情的机器人代码,就几十行的代码就可以让我们的微信报价行情的机器人运行起来。

具体的视频课程可以点击一下视频链接:https://www.bilibili.com/video/av55523107/

我是51ibitquant, 目前在录制数字货币量化交易的视频课程,大家可以在爱奇艺,B站还有优酷上找我的的视频。