PM/communicate.py

35 lines
855 B
Python

import requests
import urllib.parse as safer
import ast
def encode(target):
temp = "?"
for i in target:
temp = temp + i + "=" + target[i] + "&"
temp = temp[:-1]
return safer.quote(temp)
def decode(target):
target = safer.unquote(target)
out = {}
target = target[1:]
args = target.split("&")
for i in args:
temp = i.split("=")
out[temp[0]] = temp[1]
return out
def get(address, args):
temp = requests.get("{}/{}".format(address, encode(args)), timeout=5).content.decode()
try:
temp = ast.literal_eval(temp)
except:
print("NOT an warning or error! just for debug")
print("non dictionary response from server: "+temp)
return temp
def patch(address, args):
requests.patch("{}/{}".format(address, encode(args)))