Я делаю простой скрипт, который проверяет, есть ли у пользователя выход из форума.
def xenforo_check():
url = "http://dfkitcar.com/forum/index.php?login/login"
name = "JSATX"
headers = {'Accept':'text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8', 'Accept-Encoding':'gzip, deflate', 'Content-Type':'application/x-www-form-urlencoded'}
payload = {'login':name}
response = requests.post(url, data=payload)
soup = BeautifulSoup(response.text, "html.parser")
name_result = soup.find("div", class_="blockMessage blockMessage--error blockMessage--iconic").text
if name_result == "Incorrect password. Please try again.":
print("user found")
elif name_result == "The requested user '"+name+"' could not be found.":
print("user not found")
else:
print("possible error")
print(name_result)
xenforo_check()
Для этого примера пользователь существует, поэтому он должен вывести «user found».Вместо этого вывод:
possible error
Incorrect password. Please try again.
Мне кажется, что name_result совпадает с «Неверный пароль. Пожалуйста, попробуйте еще раз».поэтому я ожидаю, что он напечатает «пользователь найден».
То же самое имеет место, если я проверяю имя, которое не выходит.Переменная name_result не совпадает со строкой.Почему это так?