This Python program scans for nearby Wi-Fi networks, extracts their SSIDs, and measures their signal strengths in dBm. It leverages the netsh
command (Windows) to gather network information and parses the data for further processing or analysis.
- Wi-Fi Network Scanning: Identifies all available Wi-Fi networks in the vicinity.
- Signal Strength Measurement: Extracts signal strength (in dBm) for each detected network.
- Data Parsing: Efficiently parses raw network data to isolate SSIDs and signal values.
- Expandable: Can be extended for additional tasks like network prioritization or distance estimation.
- Operating System: The program uses the
netsh
command, so it works on Windows systems. - Python: Ensure Python 3.x is installed.
- Permissions: Administrative privileges may be required to run the
netsh
command.
-
Clone the Repository:
git clone https://github.com/Danialsamadi/rssi.git cd rssi
-
Run the Program: Execute the Python script to scan Wi-Fi networks:
python wifi_scanner.py
The script scans for Wi-Fi networks and outputs the detected SSIDs and their signal strengths. Below is an example workflow:
from wifi_scanner import WiFiScanner
scanner = WiFiScanner()
scanner.scan_networks()
print("Available Networks:")
for ssid, signal in zip(scanner.ssids, scanner.signal_strengths):
print(f"SSID: {ssid}, Signal Strength: {signal} dBm")
- Works only on Windows (uses
netsh
command). - Requires administrative privileges to access Wi-Fi data.
- Signal strengths depend on environmental factors (e.g., interference, distance).
This project is open-source and available under the MIT License.
Feel free to fork the repository, submit issues, or make pull requests for improvements.