使用soap api访问netgear路由器
pynetgear-enhanced的Python项目详细描述
Pynetgear_增强版
pynetgear_enhanced提供了一个易于使用的python api来控制netgear路由器。它使用现代netgear路由器上的soap api进行通信。它是通过逆向工程来构建的,这些请求由NETGEAR精灵应用程序
pynetgear_enhanced适用于python 3。
如果已连接到NETGEAR路由器的网络,则主机是可选的。
如果您通过有线连接到NETGEAR路由器,则密码是可选的。
用户名默认为admin。
端口默认为5000。
ssl默认为false。
您可以指定url,它将优先于主机/端口/ssl参数。
这允许使用https,https://orbilogin.com
例如。
感谢:
原始代码的matmaulgruijter用于其他soap端点。
它目前支持以下操作:
登录
登录到路由器。将返回true或false以指示成功。允许阻塞设备
允许用户通过指定MAC地址和新设备状态(阻止/允许)阻止/取消阻止设备访问路由器
注意:要使用此功能,必须在路由器的管理设置中启用远程管理功能。
服务设备配置:
重新启动
重新启动设备。检查新固件
返回包含固件信息的dict。设置块设备启用
启用/禁用访问控制。获取块设备启用状态
返回包含访问控制状态的dict。获取流量表统计信息
从路由器返回包含流量表信息的dict(如果在webinterface中启用)。启用流量表
启用/禁用流量表。启用流量表
返回包含交通量表状态的dict。获取流量表选项
返回包含交通量表选项的dict。
服务家长控制:
启用家长控制
启用/禁用家长控制。获取家长控制启用状态
返回包含家长控制状态的dict。获取所有Mac地址
返回包含mac地址的dict。获取DNS MASQ设备ID
返回包含dns masq设备id的dict。
服务设备信息:
获取信息
返回包含路由器信息的dict。获取支持功能列表XML
返回包含支持功能的dict。获取连接的设备
返回一个命名元组列表,描述设备信号、IP、名称、MAC、类型、链路速率和允许或块。获取连接的设备 返回一个命名元组列表,该列表描述设备信号、IP、名称、MAC、类型、链路速率、允许块、设备类型、设备型号、SSID和连接MAC。
此呼叫速度较慢,路由器负载可能更重。
服务高级服务质量:
设置速度测试开始
开始速度测试。获取速度测试结果
返回包含速度测试结果的dict。
开始速度测试后,您必须等待几秒钟以获得最终结果。设置QoS启用状态
启用/禁用QoS。获取QoS启用状态
返回包含QoS状态的dict。获取带宽控制选项
返回包含带宽控制选项的dict。
服务WLAN配置:
设置来宾访问已启用
启用/禁用2.4G来宾WiFi。启用"获取访客访问"功能
返回包含2.4G来宾WiFi状态的dict。设置来宾访问已启用 启用/禁用2.4G Guest WiFi 2。
启用"设置5G访客"访问功能
启用/禁用5G来宾WiFi。启用5g访客访问功能
返回包含5G Guest WiFi状态的dict。获取wpa安全密钥
返回包含2.4g wpa密钥的dict。获取5g wpa安全密钥
返回包含5g wpa密钥的dict。获取2G信息
返回包含2.4g信息的dict。获取5g信息
返回包含5G信息的dict。获取访客访问网络信息
返回包含2.4G来宾网络信息的dict。获取5g访客接入网络信息
返回包含5G来宾网络信息的dict。
安装
您可以使用:pip3安装pynetgear增强版
用法
对于从控制台运行的命令列表:$python3-m pynetgear_enhanced-h
对于测试,从控制台将a-t附加到命令。$python3-m pynetgear_enhanced-p='myescapedpassword!'--检查fw-t
在python脚本中使用:
frompynetgearimportNetgearnetgear=Netgear(password=mypassword)foriinnetgear.get_attached_devices():printi
支持的路由器
它已经过netgear rax80路由器的测试。之前的测试是在添加高级选项之前对r6300和wndr4500路由器进行的。根据netgear genie应用程序说明,以下路由器也应工作:
- NETGEAR RAX80
- NETGEAR ORBI
- NETGEAR R7800
- NETGEAR R7500v2
- NETGEAR R7000
- NETGEAR R6900
- NETGEAR R6300
- NETGEAR R6250
- NETGEAR R6200
- NETGEAR R6100
- NETGEAR N300-型号:C3000(端口80)
- NETGEAR Centria(Wndr4700,Wnd4720)
- NETGEAR WNDR4500
- NETGEAR WNDR4300
- NETGEAR WNDR4000
- NETGEAR WNDR3800
- NETGEAR WNDR3700v3
- NETGEAR WNDR3700v2
- NETGEAR WNDR3400v2
- NETGEAR WNR3500LV2
- NETGEAR WNR2200
- NETGEAR WNR2000v3
- NETGEAR WNR2000v4(端口80)
- NETGEAR WNR1500
- NETGEAR WNR1000v2
- NETGEAR WNR1000v3
- NETGEAR Wndrmac
- NETGEAR WNR612v2