qlapi.ql_script 源代码

import json

from .ql import ql_api


[文档]class qlscript(ql_api): """ 青龙面板api脚本管理模块 url: 青龙面板IP地址(不包含http://) post: 青龙面板端口 client_id: 青龙面板openapi登录用户名 client_secret: 青龙面板openapi登录密码 Usage:: >>> ql_script = qlscript( url="12.22.43.23", port=5700, client_id="admin", client_secret="abcdefg_", ) ql_script.get_all() """ def __init__(self, url: str, post: int, client_id: str, client_secret: str): super().__init__(url, post, client_id, client_secret) self.script_url = f"{self.url}/open/scripts/"
[文档] def get_all(self): """ 获取所有脚本列表 :return: 源响应json """ url = self.script_url + 'files' return self.s.get(url).json()
[文档] def get_script(self, name: str): """ 获取脚本详情 :param name: 脚本名称 :return: 源响应json """ url = self.script_url + name return self.s.get(url).json()
[文档] def add(self, filename: str, path: str, content: str, originFilename: str) -> dict: """ 添加脚本 :param filename: 脚本名称 :param path: 脚本路径 :param content: 脚本内容 :param originFilename: 脚本原始名称 :return: 源响应json """ url = self.script_url data = { "filename": filename, "path": path, "content": content, "originFilename": originFilename } return self.s.post(url, json=json.dumps(data)).json()
[文档] def update(self, filename: str, path: str, content: str) -> dict: """ 更新脚本 :param filename: 脚本名称 :param path: 脚本路径 :param content: 脚本内容 :return: 源响应json """ url = self.script_url data = { "filename": filename, "path": path, "content": content } return self.s.put(url, data=json.dumps(data)).json()
[文档] def delete(self, path:str,filename: str) -> dict: """ 删除脚本 :param path: 脚本路径 :param filename: 脚本名称 :return: 源响应json """ url = self.script_url data = { "path": path, "filename": filename } return self.s.delete(url,data=json.dumps(data)).json()
[文档] def download(self, filename: str) -> dict: """ 下载脚本 :param filename: 脚本名称 :return: 源响应json """ url = self.script_url + "download" data = { "filename": filename } return self.s.post(url,data=json.dumps(data)).json()
[文档] def run(self, path:str,filename: str) -> dict: """ 运行脚本 :param path: 脚本路径 :param filename: 脚本名称 :return: 源响应json """ url = self.script_url + "run" data = { "filename": filename, "path": path } print(data,url) return self.s.put(url,data=json.dumps(data)).json()
[文档] def stop(self, path:str,filename: str) -> dict: """ 停止脚本 :param path: 脚本路径 :param filename: 脚本名称 :return: 源响应json """ url = self.script_url + "stop" data = { "filename": filename, "path": path } return self.s.put(url,data=json.dumps(data)).json()