Parser for iw and iwinfo on OpenWrt devices. Currently supports only device list and connected stations data. Output from iw and iwinfo on other platforms might work, but it's not tested.
python -m pip install -U ap-parse
Log in to the device via SSH and run the the command of choice. Feed the output to ap-parse either programmatically or via the CLI.
-
List devices with iw:
iw dev
-
List stations with iw:
iw dev <device name> station dump
-
List devices with iwinfo:
iwinfo
-
List stations with iwinfo:
iwinfo <device name> assoclist
Pipe the command output to ap-parse. Example for iwinfo device list:
ssh <user@host> iwinfo | python -m apparse iwinfo device
Argument | Type | Values | Description |
---|---|---|---|
backend | str | iw , iwinfo |
Utility used to generate the output data |
type | str | device , station |
Type of the output data |
Save the command output to a file and pass it as a string to the appropriate parser. Example for iwinfo device list:
ssh <user@host> iwinfo > output.txt
import apparse
with open('output.txt', 'r', encoding='utf-8') as f:
raw_data = f.read()
parsed_data = apparse.parse_iwinfo_station(raw_data)
print(parsed_data)
In case you wish to add or remove fields or modify regexes, subclass one of the parser classes under
its respective module apparse.*_parser
.
MIT license. See LICENSE for more information.