首页 > 技术文章 > python-selenium-登陆成功后点击登录头像页面title为空,可以根据页面的其他元素来判断登陆成功失败

cyfyywfc 2018-04-02 17:00 原文

再拿自己公司的备库做测试练习selenium的时候出现过一个困难,根据下面那个页面登录后的元素定位来判断登录是否成功的时候,发现下面的title属性为空,

导致我的代码跑了一次就打印登录失败,仔细看了下自己公司搭建的备库HTML简化了,这是我就通过下图中的‘欢迎’文本来判断,

获取文本的话t = driver.find_element_by_xpath("html/body/div[1]/div[2]/h3").text,可以先打印出来,这个文本信息核对无误。在加判断,代码如下,大神们欢迎提BUG,意见

#!/usr/bin/env python
# -*- coding: UTF-8 -*-

from selenium import webdriver
import time


def Login(user, paw):
u'''登录'''
driver.get("URL")
time.sleep(1)
driver.find_element_by_id("username").clear()
driver.find_element_by_id("password").clear()
time.sleep(2)
driver.find_element_by_id("username").send_keys(user)
driver.find_element_by_id("password").send_keys(paw)
time.sleep(2)
driver.find_element_by_xpath(".//*[@id='loginbox']/div/div[2]/form/div[4]/div/div/input").click()
return driver


if __name__ == "__main__":
driver = webdriver.Firefox()
driver = Login("name", "paw")

t = driver.find_element_by_xpath("html/body/div[1]/div[2]/h3").text
# 在不确定title的情况下可以先打印出来看下
print(t)
if t == "欢迎!":
print("登录成功")
else:
print("登录失败")

推荐阅读