Skip to the content.

Home

jc.parsers.airport_s

jc - JSON Convert airport -s command output parser

The airport program can be found at /System/Library/PrivateFrameworks/Apple80211.framework/Versions/Current/Resources/airport.

Usage (cli):

$ airport -s | jc --airport-s

or

$ jc airport -s

Usage (module):

import jc
result = jc.parse('airport_s', airport_s_command_output)

Schema:

[
  {
    "ssid":         string,
    "bssid":        string,
    "rssi":         integer,
    "channel":      string,
    "ht":           boolean,
    "cc":           string,
    "security": [
                    string,
    ]
  }
]

Examples:

$ airport -s | jc --airport-s -p
[
  {
    "ssid": "DIRECT-4A-HP OfficeJet 3830",
    "bssid": "00:67:eb:2a:a7:3b",
    "rssi": -90,
    "channel": "6",
    "ht": true,
    "cc": "--",
    "security": [
      "WPA2(PSK/AES/AES)"
    ]
  },
  {
    "ssid": "Latitude38",
    "bssid": "c0:ff:d5:d2:7a:f3",
    "rssi": -85,
    "channel": "11",
    "ht": true,
    "cc": "US",
    "security": [
      "WPA2(PSK/AES/AES)"
    ]
  },
  {
    "ssid": "xfinitywifi",
    "bssid": "6e:e3:0e:b8:45:99",
    "rssi": -83,
    "channel": "11",
    "ht": true,
    "cc": "US",
    "security": [
      "NONE"
    ]
  },
  ...
]

$ airport -s | jc --airport -p -r
[
  {
    "ssid": "DIRECT-F3-HP ENVY 5660 series",
    "bssid": "b0:5a:da:6f:0a:d4",
    "rssi": "-93",
    "channel": "1",
    "ht": "Y",
    "cc": "--",
    "security": "WPA2(PSK/AES/AES)"
  },
  {
    "ssid": "YouAreInfected-5",
    "bssid": "5c:e3:0e:c2:85:da",
    "rssi": "-85",
    "channel": "36",
    "ht": "Y",
    "cc": "US",
    "security": "WPA(PSK/AES,TKIP/TKIP) WPA2(PSK/AES,TKIP/TKIP)"
  },
  {
    "ssid": "YuanFamily",
    "bssid": "5c:e3:0e:b8:5f:9a",
    "rssi": "-84",
    "channel": "11",
    "ht": "Y",
    "cc": "US",
    "security": "WPA(PSK/AES,TKIP/TKIP) WPA2(PSK/AES,TKIP/TKIP)"
  },
  ...
]

parse

def parse(data, raw=False, quiet=False)

Main text parsing function

Parameters:

data:        (string)  text data to parse
raw:         (boolean) unprocessed output if True
quiet:       (boolean) suppress warning messages if True

Returns:

List of Dictionaries. Raw or processed structured data.

Parser Information

Compatibility: darwin

Source: jc/parsers/airport_s.py

Version 1.6 by Kelly Brazil (kellyjonbrazil@gmail.com)