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

    你可能感兴趣的文章
    Python在def函数中使用for循环
    查看>>
    Python在Conda环境中,但在Windows虚拟环境中没有激活
    查看>>
    python系列【仅供参考】:python pip 错误 ModuleNotFoundError: No module named pip._internal 解决办法
    查看>>
    python图像条状状噪声,使用PYTHON PIL从验证码图像中删除背景嘈杂的线条
    查看>>
    Python图像处理:从内存加载jpeg
    查看>>
    python固定后缀(名物化词汇)词频统计:抽取+统计+可视化
    查看>>
    python商品评论数据采集与分析可视化系统 Flask框架 requests爬虫 NLP情感分析 毕业设计 源码
    查看>>
    python商品数据分析可视化系统(带爬虫)京东销售数据分析 计算机毕业设计 源码下载
    查看>>
    python商品库存管理系统 django框架 商品网站 MySQL数据库 源码下载 计算机毕业设计
    查看>>
    Python哪个版本最稳定好用2023.10.19
    查看>>
    Python和黑客技术的渊源
    查看>>
    Python和RF编写接口自动化
    查看>>
    python和js哪个难_【Python】记一次学习,Python 与 js 在实现闭包时的差异
    查看>>
    python和java哪个更值得学——来自知乎高赞回答
    查看>>
    python命名空间更改_Python模块xml.etree.ElementTree自动修改xml命名空间键
    查看>>
    Python命名中尾随下划线有什么好处?
    查看>>
    Python启动脚本
    查看>>
    Python听写汇总结果
    查看>>
    python吊打Excel?屁!那是你不会用!
    查看>>
    Python合并两张图片 | 先叠透明度再合并 (附Demo)
    查看>>