码迷,mamicode.com
首页 > 编程语言 > 详细

python-selenum3 第六天——WebDriver 常用API(一)

时间:2018-06-29 18:28:50      阅读:183      评论:0      收藏:0      [点我收藏+]

标签:pytho   too   firefox   attr   script   cti   int   drive   play   

  • 获取元素基本信息

  • 获取文本内容

  • 判断是否可见

  • 判断是否可操作

  • 获取元素的属性

  • 获取元素CSS的值

  • 清空内容

  • 输入内容

  • 单机

  • 双击




  • 1. 获取元素基本信息

    from selenium import webdriver
    
    driver = webdriver.Firefox(executable_path = "d:\\geckodriver")
    URL = "https://www.baidu.com"
    driver.get(URL)
    element = driver.find_element_by_xpath("//a[text() = '新闻']")
    #获取查找到的"新闻"链接元素的基本信息
    print(u"元素的标签名:",element.tag_name)
    print(u"元素的size:",element.size)




    2. 获取页面元素的文本内容

    driver = webdriver.Firefox(executable_path="d:\\geckodriver")
    driver.get("https://www.baidu.com")
    element = driver.find_element_by_xpath("//*[@class='mnav'][1]")
    text = element.text
    print(text)
    #下面的验证是unittest框架的断言,如果没有可以先注释掉
    assertEqual(text,u"新闻")


    3. 判断页面元素是否可见

    driver = webdriver.Firefox(executable_path="d:\\geckodriver")
    driver.get("https://www.baidu.com")
    #定位其中一个元素
    element = driver.find_element_by_id("su")
    #判断是否可见,最终结果不是True就是False
    print(element.is_displayed())




    4.判断元素是否可操作

    driver = webdriver.Firefox(executable_path="d:\\geckodriver")
    driver.get("https://www.baidu.com")
    #定位其中一个元素
    element = driver.find_element_by_id("su")
    #判断是否可操作,最终结果不是True就是False
    #如果HTML中元素添加disabled属性将处于补课操作状态
    print(element.is_enabled())




    5.获取页面元素的属性

    driver = webdriver.Firefox(executable_path="d:\\geckodriver")
    driver.get("https://www.baidu.com")
    #定位输入框元素
    element = driver.find_element_by_id("kw")
    #显示元素的name属性值,获取为wd
    print(element.get_attribute("name"))
    #输入内容
    element.send_keys(u"python")
    #获取输入的内容 获取为python
    print(element.get_attribute("value"))




    6.获取页面元素的CSS属性值

    driver = webdriver.Firefox(executable_path="d:\\geckodriver")
    driver.get("https://www.baidu.com")
    #定位其中一个元素
    element = driver.find_element_by_id("kw")
    #使用value_of_css_property()获取css属性值 高22px 宽500px 
    print(u"搜索框的高度:",element.value_of_css_property("height"))
    print(u"搜索框的宽度:",element.value_of_css_property("width"))
    #获取字体,字体为arial
    ziti = element.value_of_css_property("font-family")
    print(u"搜索框的字体是:",ziti)
    #unittest断言
    assertEqual(ziti,"arial")




    7.清空输入的内容

    driver = webdriver.Firefox(executable_path="d:\\geckodriver")
    URL = "https://www.baidu.com"
    driver.get(URL)
    #输入
    element = driver.find_element_by_id("kw")
    element.send_keys(u"python")
    #清空
    element.clear()




    8.输入

    driver = webdriver.Firefox(executable_path="d:\\geckodriver")
    URL = "https://www.baidu.com"
    driver.get(URL)
    #定位
    element = driver.find_element_by_id("kw")
    #清空原有内容
    element.clear()
    #输入新内容
    element.send_keys(u"python")




    9.点击

    driver = webdriver.Firefox(executable_path="d:\\geckodriver")
    URL = "https://www.baidu.com"
    driver.get(URL)
    #输入内容
    input = driver.find_element_by_id("kw")
    input.send_keys(u"输入python")
    #点击
    button = driver.find_element_by_id("su")
    button.click()




    10.双击

    <!--练习的html-->
    <html>
        <body>
            <input id='inputBox' type="text" ondblclick="javascript:this.style.background='red'">请双击</>
        </body>
    </html>
    driver = webdriver.Firefox(executable_path="d:\\geckodriver")
    url = "file:///D:/test.html"
    driver.get(url)
    #获取输入元素
    element = driver.find_element_by_id("inputBox")
    #导入需要的操作包
    from selenium.webdriver import ActionChains
    #开始模拟鼠标双击操作
    shuangji = ActionChains(driver)
    shuangji.double_click(element).perform()


    说明:ActionChains是鼠标操作的包,比如双击、悬浮、拖拽等

    python-selenum3 第六天——WebDriver 常用API(一)

    标签:pytho   too   firefox   attr   script   cti   int   drive   play   

    原文地址:http://blog.51cto.com/wiktk/2134320

    (0)
    (0)
       
    举报
    评论 一句话评论(0
    登录后才能评论!
    © 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
    迷上了代码!