python 报价机器人_用 Python3 写微信币价查询机器人

本文环境: Windows 10 和 python 3.5

需要安装 itchat 以及 pyquery 库,直接命令 pip3 install itchat 以及 pip3 install pyquery 进行安装

在群聊和私聊中可实现查询当前币价的功能,如下

全部代码如下

# 导入需要的库

import itchat

from pyquery import PyQuery as pq

import datetime

# 币种的缩写和其对应的全称,从非小号首页中爬取下来并装在字典中

coindict = {'BTC': 'bitcoin', 'ETH': 'ethereum', 'XRP': 'ripple', 'BCH': 'bitcoin-cash', 'EOS': 'eos', 'XLM': 'stellar', 'LTC': 'litecoin', 'ADA': 'cardano', 'MIOTA': 'iota', 'USDT': 'tether', 'TRX': 'tron', 'XMR': 'monero', 'NEO': 'neo', 'DASH': 'dash', 'VEN': 'vechain', 'ETC': 'ethereum-classic', 'XEM': 'nem', 'BNB': 'binance-coin', 'OKB': 'okb', 'HT': 'ht', 'ZEC': 'zcash', 'OMG': 'omisego', 'QTUM': 'qtum', 'ZRX': '0x', 'LSK': 'lisk', 'BCN': 'bytecoin-bcn', 'DCR': 'decred', 'BTG': 'bitgem', 'ICX': 'icon', 'BTS': 'bitshares', 'AE': 'aeternity', 'DGB': 'digibyte', 'MKR': 'maker', 'STEEM': 'steem', 'XVG': 'verge', 'DOGE': 'dogecoin', ...}

# 获取币种价格的函数

def get_price(keyword):

if keyword.upper() in coindict:

keyword = coindict[keyword.upper()]

url = 'https://www.feixiaohao.com/currencies/{}/'.format(keyword.lower())

try:

doc = pq(url)

nowTime = datetime.datetime.now().strftime('%Y-%m-%d %H:%M:%S')

content = doc('.cell')

info = content.find('.coinprice')

fluctuation =info.find('span').text()

info.find('span').remove()

price = info.text()

rank = doc('.tag-marketcap').text()

result = "当前{}的价格:{}\n涨幅:{}\n市值排名:{}\n【{}】".format(keyword,price,fluctuation,rank,nowTime)

return result

except:

return

# 在私聊中可用

@ itchat.msg_register(itchat.content.TEXT)

def text_reply(msg):

return get_price(msg['Text'])

# 在群聊中可用

@ itchat.msg_register(itchat.content.TEXT,isGroupChat=True)

def groupchat_reply(msg):

return get_price(msg['Text'])

if __name__=='__main__':

itchat.auto_login(hotReload=True) # hotReload = True, 保持在线,下次运行代码可自动登录

itchat.run()

如果进展顺利的话,点击运行后用微信扫码登陆即可,挂着服务器上就可以长期运行此机器人了。扫码关注,欢迎沟通交流学习

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值