博客
关于我
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/

    你可能感兴趣的文章
    nacos配置自动刷新源码解析
    查看>>
    Nacos集群搭建
    查看>>
    nacos集群搭建
    查看>>
    Navicat for MySQL 查看BLOB字段内容
    查看>>
    Neo4j电影关系图Cypher
    查看>>
    Neo4j的安装与使用
    查看>>
    Neo4j(2):环境搭建
    查看>>
    Neo私链
    查看>>
    nessus快速安装使用指南(非常详细)零基础入门到精通,收藏这一篇就够了
    查看>>
    Nessus漏洞扫描教程之配置Nessus
    查看>>
    Nest.js 6.0.0 正式版发布,基于 TypeScript 的 Node.js 框架
    查看>>
    NetApp凭借领先的混合云数据与服务把握数字化转型机遇
    查看>>
    NetBeans IDE8.0需要JDK1.7及以上版本
    查看>>
    netcat的端口转发功能的实现
    查看>>
    netfilter应用场景
    查看>>
    netlink2.6.32内核实现源码
    查看>>
    Netpas:不一样的SD-WAN+ 保障网络通讯品质
    查看>>
    NetScaler的常用配置
    查看>>
    netsh advfirewall
    查看>>
    NETSH WINSOCK RESET这条命令的含义和作用?
    查看>>