ADD os.mkdir(C:Scripte) to create_service.py
This commit is contained in:
@@ -0,0 +1,141 @@
|
||||
import datetime
|
||||
import subprocess
|
||||
import socket
|
||||
import os
|
||||
import psutil
|
||||
import math
|
||||
import cpuinfo
|
||||
from multiprocessing import freeze_support
|
||||
import requests
|
||||
import platform
|
||||
import wmi
|
||||
import win32serviceutil
|
||||
|
||||
def request(function,variable):
|
||||
url = (f"http://api.stines.de:8001/{function}")
|
||||
response = requests.post(url,json = variable,headers={'access_token':'^YWUbG7yX*V!tV^KBSd*2c&vdN3wV9a2i7f3hfGFMBYFxi6#mMiJGiaA5KEHE%B*miK%qb7rQ67gmcYP@gqmux8'})
|
||||
return response
|
||||
|
||||
def getdabase():
|
||||
return request("getdatabase",{'ipadress':get_local_ip()})
|
||||
|
||||
def server_exist(hostname):
|
||||
return request("info/getserver",{'name': hostname, 'dbase': getdabase()})
|
||||
|
||||
def get_cpu_brand():
|
||||
freeze_support()
|
||||
return cpuinfo.get_cpu_info()['brand_raw']
|
||||
|
||||
def splacores(cpu):
|
||||
freeze_support()
|
||||
requests = request("cpu_info",{'name':cpu})
|
||||
return requests.json()[0][0]
|
||||
|
||||
def get_cpu_core():
|
||||
freeze_support()
|
||||
return os.cpu_count()
|
||||
|
||||
def get_ram_info():
|
||||
freeze_support()
|
||||
ram_info = psutil.virtual_memory()
|
||||
total_ram = ram_info.total / (1024 ** 3) # In Gigabytes
|
||||
return math.ceil(total_ram)
|
||||
|
||||
def get_total_hdd(function):
|
||||
freeze_support()
|
||||
space = 0
|
||||
disk_partitions = psutil.disk_partitions()
|
||||
for partition in disk_partitions:
|
||||
partition_info = psutil.disk_usage(partition.mountpoint)
|
||||
if function == "free":
|
||||
space += round(partition_info.free / (1024 ** 3), 2)
|
||||
elif function == "used":
|
||||
space += round(partition_info.used / (1024 ** 3), 2)
|
||||
elif function == "total":
|
||||
space += round(partition_info.total / (1024 ** 3), 2)
|
||||
return math.ceil(space)
|
||||
|
||||
def get_winver():
|
||||
freeze_support()
|
||||
return platform.platform()
|
||||
|
||||
|
||||
def get_total_hdd(function):
|
||||
freeze_support()
|
||||
space = 0
|
||||
disk_partitions = psutil.disk_partitions()
|
||||
for partition in disk_partitions:
|
||||
partition_info = psutil.disk_usage(partition.mountpoint)
|
||||
if function == "free":
|
||||
space += round(partition_info.free / (1024 ** 3), 2)
|
||||
elif function == "used":
|
||||
space += round(partition_info.used / (1024 ** 3), 2)
|
||||
elif function == "total":
|
||||
space += round(partition_info.total / (1024 ** 3), 2)
|
||||
return math.ceil(space)
|
||||
|
||||
|
||||
def get_local_ip():
|
||||
try:
|
||||
s = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
|
||||
s.connect(("8.8.8.8", 80))
|
||||
local_ip = s.getsockname()[0]
|
||||
s.close()
|
||||
return local_ip
|
||||
except Exception as e:
|
||||
print(f"Fehler beim Abrufen der lokalen IP-Adresse: {e}")
|
||||
return None
|
||||
|
||||
def get_mainboard_info():
|
||||
c = wmi.WMI()
|
||||
for board in c.Win32_BaseBoard():
|
||||
return board.Product
|
||||
|
||||
def lastboot():
|
||||
lastboot = psutil.boot_time()
|
||||
lastboot = datetime.datetime.fromtimestamp(lastboot).strftime("%d.%m.%Y %H:%M ")
|
||||
return lastboot
|
||||
|
||||
|
||||
def find_service():
|
||||
services = ["MSExchangeTransport","NTDS","RDMS"]
|
||||
service_len = len(services)
|
||||
for index, i in enumerate(services):
|
||||
try:
|
||||
services = win32serviceutil.QueryServiceStatus(i)
|
||||
return True
|
||||
except:
|
||||
if index == service_len - 1:
|
||||
return "Software"
|
||||
else:
|
||||
continue
|
||||
|
||||
def get_windows_updates():
|
||||
c = wmi.WMI()
|
||||
updates = c.Win32_QuickFixEngineering()
|
||||
update_string = []
|
||||
for update in updates:
|
||||
update_string.append(f"KB-Artikel: {update.HotFixID} - Beschreibung: {update.Description}")
|
||||
return update_string
|
||||
|
||||
## GET HOSTNAME
|
||||
hostname = socket.gethostname()
|
||||
|
||||
## GET CURRENT DATE
|
||||
date = datetime.datetime.now()
|
||||
|
||||
## GET CPU BRAND (only 1 run)
|
||||
cpu = get_cpu_brand()
|
||||
|
||||
## GET VOLUME SPACE
|
||||
spacefree = str(get_total_hdd("free")).replace("['","").replace("]","").replace("'","")
|
||||
spaceused = str(get_total_hdd("used")).replace("['","").replace("]","").replace("'","")
|
||||
spacetotal = str(get_total_hdd("total")).replace("['","").replace("]","").replace("'","")
|
||||
|
||||
|
||||
request('systeminfo_add', {'createdate':date,'updatedate': date, 'lastboot': lastboot(), 'hostname': hostname,
|
||||
'ipaddress': get_local_ip(), 'winver': get_winver(), 'services': find_service(),
|
||||
'mainboard': get_mainboard_info(), 'cpu': splacores(cpu), 'realcores': get_cpu_core(),
|
||||
'splacores': splacores(cpu), 'ram': str(get_ram_info())
|
||||
, 'spacetotal': spacetotal, 'spaceused': spaceused,
|
||||
'spacefree': spacefree, 'winupdate': get_windows_updates()})
|
||||
Reference in New Issue
Block a user