From 74bde47cb51dc6e424bb7ff3f6c0daff69c09c76 Mon Sep 17 00:00:00 2001 From: Pedro de Oliveira Guedes Date: Tue, 11 Jan 2022 08:54:51 -0300 Subject: [PATCH] Adding the request method. --- api/autoit/cli.py | 41 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 41 insertions(+) diff --git a/api/autoit/cli.py b/api/autoit/cli.py index e69de29..7e39eec 100644 --- a/api/autoit/cli.py +++ b/api/autoit/cli.py @@ -0,0 +1,41 @@ +import os +import requests +import json +import urllib + +class AutoIt: + """ + ## AutoIt Client + --- + Esta classe utiliza o serviço "svc_autoit" para realizar operações AutoIt no computador através do Python. + + Para que esta biblioteca funcione corretamente, é necessário que você tenha o AutoIt instalado na máquina, com o caminho do mesmo apontado pela variável de ambiente PATH. + """ + ep: str = "" + + def __init__(self): + self.ep = "https://localhost:8443" + + def __request_raw_post__(self, path: str, data: str): + + """ + ## HTTP RAW POST + --- + Este método é responsável por realizar requisições HTTP do tipo POST para objetos RAW. + + Ele retorna o corpo de resposta da requisição, ou uma mensagem de erro, que indica qual foi a irregularidade ocorrida ao chamar a API. + """ + + url = self.ep + path + print("Calling: " + url) + + apikey = os.environ.get('REPLAY_APIKEY') + headers = {"X-API-KEY": apikey} + res = requests.post(url, data = data, headers = headers, verify = False) + + if res.status_code >= 400: + raise Exception(f"HTTP ERROR: {str(res.status_code)} - {res.text}") + if res.headers.get("Content-Type") != None and res.headers.get("Content-Type").find("json") != -1: + return json.loads(res.text) + else: + return res.text \ No newline at end of file