代码拉取完成,页面将自动刷新
同步操作将从 jianghong/hass-config 强制同步,此操作会覆盖自 Fork 仓库以来所做的任何修改,且无法恢复!!!
确定后同步将在后台操作,完成时将刷新页面,请耐心等待。
#系统参数地址 https://192.168.2.1/proxy/network/api/s/default/stat/device/
import json, yaml, requests
from datetime import datetime
from urllib3 import disable_warnings
disable_warnings()
SECRETS_FILE = "/config/secrets.yaml"
def get_secret(secret):
try:
with open(SECRETS_FILE, "r", encoding="utf8") as file:
secrets = yaml.full_load(file)
for key, value in secrets.items():
if key == secret:
return value
except FileNotFoundError:
print("secrets.yaml not found")
exit()
IP = get_secret("unifi_ip")
PORT = get_secret("unifi_port")
USER = get_secret("unifi_user")
PASS = get_secret("unifi_pass")
URL = f"https://{IP}:{PORT}"
login = requests.request("POST", f"{URL}/api/auth/login", \
headers={"Content-Type": "application/json"}, \
data=json.dumps({"username": USER, "password": PASS}), verify=False)
response = requests.request("GET", f"{URL}/proxy/network/api/s/default/stat/device/", \
cookies=login.cookies, verify=False)
data = response.json()["data"][3] #注意修改获得参数的序号
print(json.dumps({
"cpu": data["system-stats"]["cpu"],
"cpu_temp": round(data["temperatures"][1]["value"], 1),
"mem": data["system-stats"]["mem"],
"disk": round(data["storage"][1]["used"] / data["storage"][1]["size"] * 100, 1),
# "internet": data["internet"],
"internet": response.json()["data"][4]["internet"],
"uptime": datetime.fromtimestamp(data["startup_timestamp"]).isoformat(),
"version": data["displayable_version"]
}))
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。