Enhance BSSID retrieval in get_connected_bssid function using regex for improved accuracy; clean up imports.
This commit is contained in:
parent
7daa6e1543
commit
9665180077
1 changed files with 12 additions and 9 deletions
21
listener.py
21
listener.py
|
@ -1,14 +1,16 @@
|
|||
#!/usr/bin/env python3
|
||||
import os
|
||||
import signal
|
||||
import csv
|
||||
import sys
|
||||
import os
|
||||
import re
|
||||
import signal
|
||||
import subprocess
|
||||
import sys
|
||||
import time
|
||||
from scapy.all import sniff, Dot11, RadioTap
|
||||
|
||||
from argparse import ArgumentParser
|
||||
from collections import defaultdict
|
||||
from datetime import datetime
|
||||
from argparse import ArgumentParser
|
||||
from scapy.all import sniff, Dot11, RadioTap
|
||||
|
||||
# === Globals ===
|
||||
running = True
|
||||
|
@ -151,14 +153,15 @@ def reset_interface(interface):
|
|||
def get_connected_bssid(interface):
|
||||
try:
|
||||
out = subprocess.check_output(["iw", interface, "link"]).decode()
|
||||
for line in out.splitlines():
|
||||
if "Connected to" in line:
|
||||
return line.strip().split()[-1].lower()
|
||||
match = re.search(r"Connected to ([0-9a-f:]{17})", out.lower())
|
||||
if match:
|
||||
return match.group(1)
|
||||
print("[!] No valid MAC address found in iw link output.")
|
||||
return None
|
||||
except Exception as e:
|
||||
print(f"[!] Failed to get connected BSSID for {interface}: {e}")
|
||||
return None
|
||||
|
||||
|
||||
# === Main ===
|
||||
def main():
|
||||
parser = ArgumentParser()
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue