A Python-based tool for scanning, analyzing, and visualizing WiFi networks in your vicinity. This tool provides insights into network signal strengths and channel distributions through intuitive visualizations.
- 🔍 Scans for nearby WiFi networks
- 📊 Creates heatmap visualizations of network signal strengths
- 📈 Generates CSV reports with network data
- 🖥️ Cross-platform support (Windows/Linux/MacOS)
- 🕒 Timestamp tracking for each scan
- 📱 Simple command-line interface
- Python 3.x
- Required Python packages:
- pandas
- matplotlib
- seaborn
- numpy
-
Clone this repository
-
Install required packages:
pip install pandas matplotlib seaborn numpyRun the script from command line:
python wifi_scanner.pyThe script will:
- Scan for nearby WiFi networks
- Save network data to a CSV file
- Generate a heatmap visualization
- Save the visualization as a PNG file
The tool generates two types of output files:
wifi_data_[timestamp].csv: Raw network datawifi_heatmap_[timestamp].png: Visual representation of network signals
The heatmap visualization shows:
- X-axis: WiFi channels
- Y-axis: Network SSIDs
- Color intensity: Signal strength (%)
The CSV file includes:
- SSID (network name)
- Signal strength (%)
- Channel
- Timestamp
- Windows: Run as administrator
- Linux/MacOS: Run with sudo privileges
The tool uses:
netshcommand on Windowsiwlistcommand on Linux/MacOS- Signal strength is measured in percentage (0-100%)
- Channel information for both 2.4GHz and 5GHz bands
- Requires administrative privileges/location services
- Some network information might be hidden by the operating system
- Signal strength conversion might vary between operating systems
Feel free to open issues or submit pull requests with improvements!
This project is licensed under the MIT License - see the LICENSE file for details.
