UnicodeWarning:Unicode 相等比较失败
UnicodeWarning: Unicode equal comparison failed
我不明白为什么我的两个字符串无法比较和匹配。
warn_msg = ('Přihlášení bylo neúspěšné.') # Translated as: Login Failed.
soup = BeautifulSoup(auth, 'lxml')
find_login = soup.find("div", class_="box").text # Will Give: 'Přihlášení bylo neúspěšné.'' # Translated as: 'Login Failed.'
"""
find_login returns: 'Přihlášení bylo neúspěšné.
"""
if find_login == warn_msg:
print('Nothing')
当我将 bs4 字符串与我的 var warn_msg
进行比较时,它们是相等的,但 python 不这么认为。如果我只使用 requests
而没有 bs4
并从 html 中切分解析的字符串并比较它们 = True。我很困惑为什么它似乎不适用于 bs4。我在这里查看了编码手册:https://www.python.org/dev/peps/pep-0263/ 但我没有让它工作。
我得到的错误:
UnicodeWarning: Unicode equal comparison failed to convert both arguments to Unicode - interpreting them as being unequal
这只是我的工作示例,仅使用 requests
for i in passwords:
auth = requests.post(login_url, headers=headers, data=payload).content[7838:7872]
if auth == warn_msg:
print('It works, strings match')
输出:
C:\Users\petr>E:\Scripting\python\test.py
It works, strings match
来自评论讨论:
请找出这种情况下两个字符串的类型。在这种特定情况下,一种是 Unicode 类型,另一种是字符串类型。将字符串类型转换为Unicode,然后比较两个字符串可以帮助更快地解决问题。
快乐编码:) @uzdisral
我不明白为什么我的两个字符串无法比较和匹配。
warn_msg = ('Přihlášení bylo neúspěšné.') # Translated as: Login Failed.
soup = BeautifulSoup(auth, 'lxml')
find_login = soup.find("div", class_="box").text # Will Give: 'Přihlášení bylo neúspěšné.'' # Translated as: 'Login Failed.'
"""
find_login returns: 'Přihlášení bylo neúspěšné.
"""
if find_login == warn_msg:
print('Nothing')
当我将 bs4 字符串与我的 var warn_msg
进行比较时,它们是相等的,但 python 不这么认为。如果我只使用 requests
而没有 bs4
并从 html 中切分解析的字符串并比较它们 = True。我很困惑为什么它似乎不适用于 bs4。我在这里查看了编码手册:https://www.python.org/dev/peps/pep-0263/ 但我没有让它工作。
我得到的错误:
UnicodeWarning: Unicode equal comparison failed to convert both arguments to Unicode - interpreting them as being unequal
这只是我的工作示例,仅使用 requests
for i in passwords:
auth = requests.post(login_url, headers=headers, data=payload).content[7838:7872]
if auth == warn_msg:
print('It works, strings match')
输出:
C:\Users\petr>E:\Scripting\python\test.py
It works, strings match
来自评论讨论:
请找出这种情况下两个字符串的类型。在这种特定情况下,一种是 Unicode 类型,另一种是字符串类型。将字符串类型转换为Unicode,然后比较两个字符串可以帮助更快地解决问题。
快乐编码:) @uzdisral