python遍历停不下来

import requests

url = 'http://www.example.com/Login/'
list = [{"LoginID": 'abcc', "Password": 'a123456'}, {"LoginID": 'hijj', "Password": 'b123456'}, {"LoginID": 'xyzz', "Password": 'c123456'}]
for data in list:
    response = requests.post(url,data=data)
    if '登录成功' in response:
        break
    print(response.request.body)
    print(response.text)
    print(response.status_code)

登录成功,怎么让遍历停下来,哪里有问题,我想让他第二个参数登录成功就停止请求

【以下回答由 GPT 生成】

问题出在判断是否登录成功的逻辑上。requests.post()返回的是一个Response对象,而不是一个字符串。所以你无法直接通过在response中查找字符串'登录成功'来判断是否登录成功。需要对response进行适当的处理才能得到需要的信息。

以下是一种可能的解决方案:

import requests

url = 'http://www.example.com/Login/'
data_list = [{'LoginID': 'abcc', 'Password': 'a123456'}, 
             {'LoginID': 'hijj', 'Password': 'b123456'}, 
             {'LoginID': 'xyzz', 'Password': 'c123456'}]

for data in data_list:
    response = requests.post(url, data=data)
    if '登录成功' in response.text:
        break
    print(response.request.body)
    print(response.text)
    print(response.status_code)

解决方案中的关键是使用response.text来获取服务器返回的内容,然后再在其中查找是否包含字符串'登录成功'。如果包含,则停止遍历。



【相关推荐】



如果你已经解决了该问题, 非常希望你能够分享一下解决方案, 写成博客, 将相关链接放在评论区, 以帮助更多的人 ^-^
import requests
 
url = 'http://www.example.com/Login/'
list = [{"LoginID": 'abcc', "Password": 'a123456'}, {"LoginID": 'hijj', "Password": 'b123456'}, {"LoginID": 'xyzz', "Password": 'c123456'}]
for data in list:
    response = requests.post(url,data=data)
    if '登录成功' in response:
        break
print(response.request.body)
print(response.text)
print(response.status_code)

缩进错了