Geowifi - Search WiFi Geolocation Data By BSSID And SSID On Different Public Databases

Search WiFi geolocation data by BSSID and SSID on different public databases.



  • Python3.
  • In order to display emojis on Windows, it is recommended to install the new Windows terminal.
  • ⚠️ In order to use the Wigle service it is necessary to obtain an API and configure the utils/API.yaml file replacing the value of the "wigle_auth" parameter for the "Encoded for use" data provided by Wigle. This is necessary for searching by SSID.


Use the package manager pip to install requirements.

python3 -m pip install -r requirements.txt


usage: geowifi.py [-h] (-s SSID | -b BSSID) [-j] [-m]optional arguments:  -h, --help               Show this help message and exit  -s SSID, --ssid SSID     Search by SSID  -b BSSID, --bssid BSSID  Search by BSSID  -j, --json               Json output  -m, --map                Map output
  • Search by BSSID:
python3 geowifi.py -b BSSID
  • Search by SSID:
python3 geowifi.py -s SSID

It is possible to export the results in json format using the -j parameter and show the locations on html map using -m.

Map output example

Json output example

{   "data":{      "bssid":"A0:XX:XX:XX:6F:90",      "vendor":"TP-LINK TECHNOLOGIES CO.,LTD.",      "mac_type":"MA-L",      "wigle":{         "lat":00.000908922099,         "lon":00.000945220028      },      "apple":{         "lat":"not_found",         "lon":"not_found"      },      "openwifi":{         "lat":00.000808900099,         "lon":00.000845500028      },      "milnikov":{         "lat":"not_found",         "lon":"not_found"      }   }}


  • This project uses some of the research and code used at iSniff-GPS.
  • Thanks to Micah Hoffman for his attention and answers to my questions.
  • Thanks to kennbro for lending me his scrupulous eyes to give me feedback.

Disqus Comments