Generador de código QR Wi-Fi usando Python

Requisito previo: Obtener contraseñas Wifi guardadas usando Python

Sabemos que la red inalámbrica es el adaptador de red más común en la actualidad, debido a que admite portabilidad y es fácil de usar. En este artículo, veremos cómo podemos obtener el nombre y las contraseñas de Wi-Fi guardados actualmente y generar un código QR para conectar otros dispositivos usando Python.

Antes de comenzar, debemos instalar el módulo wifi-qrcode-generator para generar un código QR para su Wi-Fi y permitir que otros se conecten rápidamente a su Wi-Fi:

Instalación:

Este módulo no viene integrado con Python. Para instalar este tipo, escriba el siguiente comando en la terminal.

pip install wifi-qrcode-generator

Uso:

Python3

# Import module
import wifi_qrcode_generator as qr
 
# Use wifi_qrcode() to create a QR image
qr.wifi_qrcode('wifi name ', False, 'WPA', 'password')

Producción:

Ahora vamos a obtener el nombre de Wi-Fi y las contraseñas actuales en cmd:

 Si escribe este código de interfaz netsh wlan show en el terminal cmd, obtendrá varios detalles:

Si escribe este netsh wlan show profile {Nombre del perfil} key=clear code en su terminal, obtendrá la clave de red.

Acercarse:

  1. Importe el subproceso del módulo y el módulo wifi-qrcode-generator .
  2. Obtenga el resultado del comando netsh wlan show interface usando subprocess.check_output() .
  3. Decodifique la salida con utf-8, divida los metadatos según la línea.
  4. Ahora obtenga la string dividida para encontrar su nombre de Wi-Fi actual (nombre SSID ).
  5. Ahora haga lo mismo para la contraseña y encuentre la contraseña de Wi-Fi ( Contenido clave ).
  6. Ahora Genere su código QR Wi-Fi.

A continuación se muestra la implementación.

Python3

# import modules
import subprocess
import wifi_qrcode_generator
 
 
# try catch block begins
# try block
try:
   
    # traverse the profile
    Id = subprocess.check_output(
        ['netsh', 'wlan', 'show', 'interfaces']).decode('utf-8').split('\n')
     
    id_results = str([b.split(":")[1][1:-1]
                      for b in Id if "Profile" in b])[2:-3]
 
    # traverse the password
    password = subprocess.check_output(
        ['netsh', 'wlan', 'show', 'profiles',
         id_results, 'key=clear']).decode('utf-8').split('\n')
     
    pass_results = str([b.split(":")[1][1:-1]
                        for b in password if "Key Content" in b])[2:-2]
    print("User name :", id_results)
    print("Password :", pass_results)
     
except:
    print("something wrong")
     
# generate Qr code
wifi_qrcode_generator.wifi_qrcode(id_results, False, 'WPA', pass_results)

Producción:

Publicación traducida automáticamente

Artículo escrito por kumar_satyam y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *