python3相关的zookeeper包支持的少,互联网上大量的文章都是使用的zkpython,可是zkpython只支持到python2.7,找了半天才寻找到
kazoo,也很好用
环境信息
python3.5
用到的包
kazoo base64 rsa
#!/usr/bin/env python
# -*- coding: utf-8 -*-
# @Time : 17/10/17 下午4:00
# @Author : lee
# @File : get.py
# @Version : 1.0
# 说明: code后有'#'是测试时加的或者需要修改的code
# 用法:python3使用zookeeper和公私钥加解密传输机器人配置文件
from kazoo.client import KazooClient
import base64
import rsa
privfile = open('rsa_private_key.pem','r')
with open('rsa_private_key.pem','r') as f: # 读取本地的私钥
privkey = rsa.PrivateKey.load_pkcs1(f.read().encode())
zk = KazooClient(hosts='172.18.xx.xx:2181') # 172.18.xx.xx:2181zookeeper地址端口
zk.start()
if zk.exists("/xxx/yyy"): # /xxx/yyy配置文件目录
print ("OK")
mes = (zk.get('/lambda/global')[0]) # 取元组元素第一个
mes = base64.b64decode(mes) # base64解码
message = rsa.decrypt(mes, privkey).decode()
message = base64.b64decode(message) # base64解码
print(message)
else:
print ("not exists.")
zk.stop() # 停止使用zk