咕咕机是一个wifi热敏打印机,可以通过向官方申请api自己提交花式打印。
#!/usr/bin/python
#-*- coding:utf-8 -*-
import requests, os
import datetime
import base64
# 向官网申请的key
ak = '********************************'
# 设备id
memobirdID = '****************'
# 咕咕id
useridentifying = '******'
KEY_RES = "showapi_res_code"
KEY_USERID = "showapi_userid"
KEY_PRINTID = "printcontentid"
def getTime():
dt = datetime.datetime.now()
return dt.strftime('%Y-%m-%d %H:%M:%S')
def getApiUserId():
url = "http://open.memobird.cn/home/setuserbind"
data = {
'ak': ak,
'timestamp': getTime(),
'memobirdID': memobirdID,
'useridentifying': useridentifying,
}
res = requests.post(url, data)
res.raise_for_status()
s = res.json()
assert s[KEY_RES] == 1
return s[KEY_USERID]
def printpaper(userID, text):
url = "http://open.memobird.cn/home/printpaper"
content = unicode(text, 'utf8').encode('gbk')
data = {
'ak': ak,
'timestamp': getTime(),
'printcontent': 'T:'+ base64.b64encode(content),
'memobirdID': memobirdID,
'userID': userID,
}
res = requests.post(url, data)
res.raise_for_status()
s = res.json()
assert s[KEY_RES] == 1
return s[KEY_PRINTID]
if __name__ == '__main__':
apiUserId = getApiUserId()
print("apiUserId:", apiUserId)
printId = printpaper(apiUserId, "中文打印测试q34fd&*9")
print("printId:", printId)