Files
tools/change_font/req.py
flt6 f6658f3d52 First commit
Former-commit-id: 424079609133edcc501ae185509836ee1181a02c
2022-06-12 19:47:20 +08:00

48 lines
1.5 KiB
Python

from application_json import ApplicationJsonMethods
from base64 import b64encode
from json import dump, load,loads
from os.path import exists
class Req(ApplicationJsonMethods):
def __init__(self, key_id: str = None, key_sec: str = None,warn=True):
if key_id is None or key_sec is None:
self.ready = self.from_file()
else:
self.key_id = key_id
self.key_sec = key_sec
self.ready = True
if self.ready:
super().__init__(self.key_id, self.key_sec)
elif warn:
raise Warning("Req is not ready!")
def from_file(self) -> bool:
if exists("Config.json"):
with open("Config.json", "r") as f:
data = load(f)
self.key_id = data["id"]
self.key_sec = data["sec"]
return True
else:
return False
def to_file(self) -> None:
data={"id":self.key_id, "sec":self.key_sec}
with open("Config.json", "w") as f:
dump(data,f)
def set(self,key_id: str, key_sec: str):
self.key_id = key_id
self.key_sec = key_sec
self.ready = True
self.to_file()
super().__init__(key_id, key_sec)
def __call__(self,url:str,filename:str,**argvs) -> dict:
with open(filename,"rb") as f:
file=b64encode(f.read()).decode()
parms=dict(image_base64=file,**argvs)
ret=self.post(url,parms)
# print(ret)
return loads(ret)