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

    你可能感兴趣的文章
    SpringBoot处理JSON数据
    查看>>
    Redis使用基本套路
    查看>>
    php 解决项目中多个自动加载冲突问题
    查看>>
    PHP 设置调试工具XDebug PHPStorm IDE
    查看>>
    php 身份证号检测
    查看>>
    PHP 输入输出流合集
    查看>>
    PHP 过滤器(Filter)
    查看>>
    php 运算符and or && || 的详解
    查看>>
    php 返回html字符串长度限制,记一次js中和php中的字符串长度计算截取的终极问题和完美...
    查看>>
    php 阿里云oss 上传回调
    查看>>
    PHP 面向对象 final类与final方法
    查看>>
    php+JQ+EasyUI自动加载数据
    查看>>
    php+sql server根据自增序号id区间查询第几条到第几条的数据
    查看>>
    php--------获取当前时间、时间戳
    查看>>
    Redis使用场景举例
    查看>>
    php--正则表达式
    查看>>
    php--防止sql注入的方法
    查看>>
    PHP-CGI Windows平台远程代码执行漏洞复现(CVE-2024-4577)
    查看>>
    php-cgi耗尽报502错误
    查看>>
    php-cgi(fpm-cgi) 进程 CPU 100% 与 file_get_content...
    查看>>