Você pode fazer isso facilmente a partir das ligações pygi do NetworkManager:
from gi.repository import NetworkManager, NMClient
nmc = NMClient.Client.new()
devs = nmc.get_devices()
for dev in devs:
if dev.get_device_type() == NetworkManager.DeviceType.WIFI:
for ap in dev.get_access_points():
print ap.get_ssid()
Ou diretamente do DBus, veja link
Se você está inclinado a simplesmente roteirizar isso no shell; Uma maneira fácil de perguntar ao NetworkManager é usar:
nmcli dev wifi list
Ou use iwlist scan , ou melhor: iw dev wlan0 scan (ou ... scan dump ), depois de instalar o iw package.