zoukankan      html  css  js  c++  java
  • python selenium判断元素是否存在的问题

    爬虫的时候经常用到这个,找到了一个比较好用的方法

    原文链接:http://blog.csdn.net/u012189659/article/details/36391837

    背景:selenium+python处于学习阶段,功能实现之后开始整理之前写的代码,突然发现一个功能没有做判断,比如,点击“请登录”,需要判断一下这个弹出框到底弹了没有,这样就需要判断某个元素是否存在,使用is_displayed函数只能用于该元素存在去判断此元素是否出现,而不能判断某个元素是否存在,所以就自己写了个方法

    代码:

    from selenium import webdriver
    import unittest
    from selenium.webdriver.common.action_chains import ActionChains
    class test1(unittest.TestCase):
        
        def setUp(self):
            self.driver=webdriver.Firefox()
            self.baseurl="http://www.xebest.com"
    #        self.driver.maximize_window()
            
            
            
            
            
        def dengLu(self):
            browser=self.driver
            
            browser.get(self.baseurl)
            
            browser.find_element_by_link_text(u"请登录").click()
            #调用isElementExist方法,判断元素是否存在
            flag=test1.isElementExist(self, "div.popup-content")         
            
            if flag:
                
                browser.find_element_by_id("userName").send_keys("w74581@163.com")
                browser.find_element_by_id("password").send_keys("w123456")
                browser.find_element_by_id("imgLogin").click()
                print(browser.switch_to_alert().text)
                browser.switch_to_alert().accept()
                
                
            else:
                print("没有弹框")
            
            
            
            
    #   该方法用来确认元素是否存在,如果存在返回flag=true,否则返回false        
        def isElementExist(self,element):
            flag=True
            browser=self.driver
            try:
                browser.find_element_by_css_selector(element)
                return flag
            
            except:
                flag=False
                return flag
  • 相关阅读:
    Fedora下使用minicom及USB串口线
    fedora装机后要运行的脚本(原创)
    终极 Shell
    深入学习 Git 工作流
    如何使用Git上传项目代码到github
    Fedora23 chrome 安装
    Fedora下安装deb包方法
    vim自动缩进设置
    Fedora 20 安装搜狗拼音输入法
    C语言stat()函数:获取文件状态
  • 原文地址:https://www.cnblogs.com/Jacck/p/7784915.html
Copyright © 2011-2022 走看看