博客
关于我
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中使用wordcloud生成漂亮的中文词云
    查看>>
    Python中使用wxpy定时机器人给微信好友发送每日一文
    查看>>
    Python中使用zip()并行迭代
    查看>>
    Python中使用推导式创建序列
    查看>>
    Python中信号处理程序和atexit处理程序的调用
    查看>>
    Python中关于txt的简单读写模式与操作
    查看>>
    Python中关于类和函数的初体验之"__init__"和"__str__"不是"_init_"和"_str_"
    查看>>
    python中函数接受参数为*args, **kwargs怎么办
    查看>>
    Python中切片的高效迭代
    查看>>
    python中列表乘法、eval、lambda、hasattr、assert、*(星)等的用法
    查看>>
    Python中制作词云的WordCloud参数详解
    查看>>
    Python中可用和使用的系统内存?
    查看>>
    python中存根文件(.pyi)的用途是什么?
    查看>>
    Python中实现ASCII码与字符相互转换
    查看>>
    Python中实现获取所有微信好友的头像并拼接成一张图片
    查看>>
    Python中对象的布尔值
    查看>>
    python中对集合的操作
    查看>>
    python中将列表转换为元组的时间复杂度,反之亦然
    查看>>
    Python中布尔表达式的求值
    查看>>
    python中很常用的10个内置函数整理(初学必备)
    查看>>