博客
关于我
Selenium-WebDriverApi介绍
阅读量:83 次
发布时间:2019-02-26

本文共 1890 字,大约阅读时间需要 6 分钟。

Selenium操作指南

浏览器操作

在Selenium中,通过WebDriver实现浏览器操作,可以使用以下命令:

  • 刷新页面:driver.refresh()
  • 前进:driver.forward()
  • 后退:driver.back()

获取标签元素

通过不同方式定位标签元素并执行操作:

  • ID定位driver.find_element_by_id('i1').send_keys(1111)
  • 类名定位driver.find_element_by_class_name('c1').send_keys(1111)
  • 名称属性定位driver.find_element_by_name('n1').send_keys(1111)
  • Xpath定位driver.find_element_by_xpath('//input[@placeholder="请通过XPATH定位元素"]').send_keys(1111)
  • CSS选择器定位driver.find_element_by_css_selector('[maxlength="20"]').send_keys(2222)
  • 标签名称定位driver.find_element_by_tag_name('input').send_keys('tag name')
  • 链接文本定位driver.find_element_by_link_text('登录').click()
  • 部分链接文本匹配driver.find_element_by_partial_link_text('录').click()
  • 复数元素操作

    使用find_elements获取多个元素:

    e = driver.find_elements_by_class_name('classname')[0]e.send_keys(1111)print(e)print(type(e))

    也可以通过参数形式调用:

    driver.find_element('id','i1').send_keys(1111)driver.find_elements('id','i1')[0].send_keys(2222)

    窗口操作

    管理浏览器窗口:

    • 获取窗口大小:driver.get_window_size()
    • 设置窗口大小:driver.set_window_size('100','200')
    • 获取窗口位置:driver.get_window_position()
    • 设置窗口位置:driver.set_window_position(20,20)
    • 最大化窗口:driver.maximize_window()
    • 获取当前句柄:driver.current_window_handle
    • 获取所有浏览器句柄:driver.window_handles

    截取页面

    获取页面截图:

    driver.get_screenshot_as_file('d.png')

    滚动操作:

    driver.execute_script('window.scrollTo(0,0);')

    关闭与退出

    • 关闭当前页面:driver.close()
    • 退出所有页面:driver.quit()

    其他操作

    获取页面信息:

    • 页面源码:driver.page_source
    • 标题:driver.title
    • 当前URL:driver.current_url
    • 浏览器名称:driver.name

    ElementAPI接口

    操作元素:

    • 获取属性:element.get_attribute('style')
    • 输入文本:element.send_keys()
    • 清空内容:element.clear()
    • 鼠标点击:element.click()
    • 获取属性值:element.get_property('id')
    • 是否可见:element.is_displayed()
    • 是否选中:element.is_selected()
    • 标签名称:element.tag_name
    • 元素大小:element.size
    • 元素文本:element.text
    • 提交数据:element.submit()
    • 截取坐标:element.location
    • 截图操作:element.screenshot()

    注意事项

    • 使用driver.find_element_by_css_selector()优于其他方法,因为它兼容W3C规范。
    • 在处理文件输入时,send_keys()可传绝对路径文件。

    通过合理使用上述方法,可以实现对各种页面元素的精准操作和浏览器管理。

    转载地址:http://rhpk.baihongyu.com/

    你可能感兴趣的文章
    Objective-C实现Boyer-Moore字符串搜索算法(附完整源码)
    查看>>
    Objective-C实现BP误差逆传播算法(附完整源码)
    查看>>
    Objective-C实现breadth First Search广度优先搜索算法(附完整源码))
    查看>>
    Objective-C实现BreadthFirstSearch广度优先搜索算法(附完整源码)
    查看>>
    Objective-C实现BreadthFirstShortestPath广度优先最短路径算法(附完整源码)
    查看>>
    Objective-C实现bubble sort冒泡排序算法(附完整源码)
    查看>>
    Objective-C实现bucket sort桶排序算法(附完整源码)
    查看>>
    Objective-C实现Burke 抖动算法(附完整源码)
    查看>>
    Objective-C实现Burrows-Wheeler 算法(附完整源码)
    查看>>
    Objective-C实现CaesarsCiphe凯撒密码算法(附完整源码)
    查看>>
    Objective-C实现calloc函数功能(附完整源码)
    查看>>
    Objective-C实现canny边缘检测算法(附完整源码)
    查看>>
    Objective-C实现cartesianProduct笛卡尔乘积算法(附完整源码)
    查看>>
    Objective-C实现check strong password检查密码强度算法(附完整源码)
    查看>>
    Objective-C实现chudnovsky algorithm楚德诺夫斯基算法(附完整源码)
    查看>>
    Objective-C实现CIC滤波器(附完整源码)
    查看>>
    Objective-C实现circle sort圆形排序算法(附完整源码)
    查看>>
    Objective-C实现CircularQueue循环队列算法(附完整源码)
    查看>>
    Objective-C实现clearBit清除位算法(附完整源码)
    查看>>
    Objective-C实现climbStairs爬楼梯问题算法(附完整源码)
    查看>>