Python包,允许管理tenda路由器AC15。

tendawifi的Python项目详细描述


天达wifi

一个简单的Python包,允许管理tenda路由器AC15。在

安装

    $ pip install tendawifi

美国石油学会

首先,它必须实例化一个TendaAC15对象:

如果它使用默认路由器ip“192.168.1.1”运行:

^{pr2}$

如果它使用自定义路由器ip运行:

>>>t=tendawifi.TendaAC15(url_base="10.0.0.1")>>>Password:

如果它在不询问密码的情况下运行:

>>>t=tendawifi.TendaAC15(url_base="10.0.0.1",password="YOURPASS")

目前,它具有以下特点:

通过MAC地址获取父控件配置

defget_parent_control(self,mac:str)->dict:"""    Return a dictionary of a Client Parent Control configuration.    Args:        mac:str: Client MAC address ex: "aa:bb:cc:dd:ee:ff"    Returns:        dict: {'enable': 1, 'mac': 'aa:bb:cc:dd:ee:ff', 'url_enable': 0, 'urls': '',        'time': '09:00-01:30', 'day': '1,1,1,1,1,1,1', 'limit_type': 1}    """

设置父控件配置MAC地址

defset_parent_control(self,mac:str,status:int)->str:"""    Set status of a Client Parent Control configuration.    Args:        mac:str: Client MAC address ex: "aa:bb:cc:dd:ee:ff"        status:int: Status of client Parent Control ex: 1 (enable) 0 (disable)    Returns:        str: Request response '{"errCode":0}'    """

获取虚拟服务器配置

defget_vports(self)->dict:"""    Return a dictionary of Virtual Server configuration.    Returns:        dict: {'lanIp': '192.168.1.1', 'lanMask': '255.255.255.0',            'virtualList': [{'ip': '192.168.1.100', 'inPort': '80', 'outPort': '80', 'protocol': '0'}, ...]}    """

设置虚拟服务器配置

defset_vports(self,vports_dict:dict)->str:"""    Set Virtual Server configuration from dictionary returned by get_vports() method.    Args:        vports_dict:list: List of Virtual Server settings.    Returns:        str: Request response '{"errCode":0}'    """

获取带宽控制配置

defget_net_control(self)->list:"""    Return a list of Bandwidth configuration.    Returns:        list: [{'netControlEn': '1'}, {'upSpeed': '0', 'downSpeed': '0', 'devType': 'unknown',            'hostName': 'ClientName', 'ip': '192.168.1.100', 'mac': 'aa:bb:cc:dd:ee:ff', 'limitUp': '0',            'limitDown': '0', 'isControled': '0', 'offline': '0', 'isSet': '0'}, ...]        """

设置带宽控制配置

defset_net_control(self,net_control:list)->str:"""    Set Bandwidth Control configuration from list returned by get_net_control() method.    Args:        net_control:list: List of Bandwidth settings.    Returns:        str: Request response '{"errCode":0}'    """

通过MAC地址获取DHCP保留配置

defget_ipmac_bind(self)->dict:"""    Return a dictionary of DHCP Reservation configuration.    Returns:        dict: {'lanIp': '192.168.1.1', 'lanMask': '255.255.255.0', 'dhttpIP': '172.27.175.218', 'dhcpClientList': [],            'bindList': [{'ipaddr': '192.168.1.100', 'macaddr': 'aa:bb:cc:dd:ee:ff', 'devname': 'ClientName', 'status': '1'}, ...]}    """

按MAC地址设置DHCP保留配置

defset_ipmac_bind(self,ipmac_bind_dict:dict)->str:"""    Set DHCP Reservation configuration from dictionary returned by get_ipmac_bind() method.    Args:        ipmac_bind_dict:dict: List of DHCP Reservation settings.    Returns:        str: Request response '{"errCode":0}'    """

按“devname”值筛选DHCP保留配置

deffilter_bindlist_by_devname(self,str_in_dev_name:str)->list:"""    Return a list of DHCP Reservation configuration filtered by 'devname' value if contains the str_in_dev_name param.    Returns:        list: [{'ipaddr': '192.168.1.100', 'macaddr': 'aa:bb:cc:dd:ee:ff', 'devname': 'ClientName', 'status': '1'}, ...]}    """

获取在线客户列表

defget_online_list(self)->list:"""    Return a list of online clients.    Returns:        list: [{"deviceId": "aa:bb:cc:dd:ee:ff", "ip": "192.168.1.100", "devName": "ClientName", "line": "2", "uploadSpeed": "0",                "downloadSpeed": "0", "linkType": "unknown", "black": 0, "isGuestClient": "false" }, ...]}    """

按“devName”值筛选联机客户端列表

deffilter_onlinelist_by_devname(self,str_in_dev_name:str)->list:"""    Return a list of online clients filtered by 'devname' value if contains the str_in_dev_name param.    Returns:        list: [{"deviceId": "aa:bb:cc:dd:ee:ff", "ip": "192.168.1.100", "devName": "ClientName", "line": "2", "uploadSpeed": "0",                "downloadSpeed": "0", "linkType": "unknown", "black": 0, "isGuestClient": "false" }, ...]}    """

重新启动路由器

defreboot(self):"""        Reboot the router        """

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java如何使安卓材质看起来漂亮?   在运行的java jar中打开文件   java如何在RxJava中为列表使用take()运算符?   flyway 1.4.2版在Java 1.7上运行?   java为什么在到达loadfactor时需要调整哈希集合的大小,为什么不能等到集合已满   数组Java对象未返回预期数据   java在Eclipse上的Gradle项目中找不到资源:/METAINF/BenchmarkList   java如何为Spring引导应用程序提供React构建文件   java如何在jpa中创建表作为InnoDB?   Android上的java DRM安全级别   java如何在单击按钮时创建自定义Dilaog   java从多对多关系hibernate创建的表中列出数据   java ElasticSeach |在删除索引后找不到插入的文档   java是否已弃用图表上的javaFX向下展开方法?   java由于某种原因,单词sinchservice和活动的名称有一个错误,即不能解析错误“CallActivity”?