Salut !

Bon je ne vais pas vous mentir , je suis une vraie nouille , j'aimerais créer un programme python qui ressemble fortement à la commande CMD

netsh wlan show profile "NomDuRéseauWifi" key=clear

Mais sur l'ensemble des connections ayant été enregistrées par le passé j'ai donc chopé des morceau de code à gauche à droite et j'ai monté ça

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
 
import subprocess
from unidecode import unidecode
 
a = subprocess.check_output(['netsh', 'wlan', 'show', 'profiles']).decode('utf-8').split('\n')
a = [i.split(":")[1][1:-1] for i in a if "Profil Tous les utilisateurs" in i]
for i in a:
    results = subprocess.check_output(['netsh', 'wlan', 'show', 'profile', i, 'key=clear']).decode('utf-8').split('\n')
    results = [b.split(":")[1][1:-1] for b in results if "Contenu de la clé" in b]
    try:
        print ("{:<30}|  {:<}".format(i, results[0]))
    except IndexError:
        print ("{:<30}|  {:<}".format(i, ""))
a = input("")

Sauf que v'la le soucis : UnicodeDecodeError: 'utf-8' codec can't decode byte 0xff in position 31: invalid start byte

Et donc , pas moyen de lancer ce fichu script ...
A savoir que si je remplace l'UTF-8 par la norme Iso , le script fonctionne en partie , il va me lister mes réseaux wifi pré enregistré mais pas les mots de passe...

Des idées messieurs dames ?