Files
dobin-avred/scanner.py
T
2023-03-18 12:16:45 +01:00

35 lines
904 B
Python

import requests as req
import logging
from model.extensions import Scanner
class ScannerRest(Scanner):
def __init__(self, url, name):
self.scanner_path = url
self.scanner_name = name
def scan(self, data, filename):
params = { 'filename': filename }
res = req.post(f"{self.scanner_path}/scan", params=params, data=data, timeout=10)
jsonRes = res.json()
if res.status_code != 200:
print("Err: " + str(res.status_code))
print("Err: " + str(res.text))
ret_value = jsonRes['detected']
return ret_value
def checkOnlineOrExit(self):
try:
res = req.post(f"{self.scanner_path}/test", timeout=1)
except:
logging.error("Scanner {} is not online at: {}".format(
self.scanner_name, self.scanner_path
))
exit(1)