selenium知识点整理&汇总我爱编程

Selenium笔记(3)Remote Webdriver

2018-05-10  本文已影响169人  王南北丶

本文集链接:https://www.jianshu.com/nb/25338984

简介

selenium.webdriver.remote.webdriver.WebDriver 这个类其实是所有其他Webdriver的父类,例如Chrome WebdriverFirefox Webdriver都是继承自这个类。这个类中实现了每个Webdriver间相通的方法。


常用操作


查找元素

Webdriver对象中内置了查找节点元素的方法,使用非常方便。

单个查找

以下是查找单个元素的方法:

方法 作用
find_element_by_xpath() 通过Xpath查找
find_element_by_class_name() 通过class属性查找
find_element_by_css_selector() 通过css选择器查找
find_element_by_id() 通过id查找
find_element_by_link_text() 通过链接文本查找
find_element_by_name() 通过name属性进行查找
find_element_by_partial_link_text() 通过链接文本的部分匹配查找
find_element_by_tag_name() 通过标签名查找

查找后返回的是一个Webelement对象。

多个查找

上面的方法都是将第一个找到的元素进行返回,而将所有匹配的元素进行返回使用的是find_elements_by_*方法。

注:将其中的element加上一个s,则是对应的多个查找方法。

此方法返回的是一个Webelement对象组成的列表。

通过私有方法进行查找

除了以上的多种查找方式,还有两种私有方法find_element()find_elements()可以使用:

例子:

from selenium.webdriver.common.by import By

driver.find_element(By.XPATH, '//button[text()="Some text"]')
driver.find_elements(By.XPATH, '//button')

By这个类是专门用来查找元素时传入的参数,这个类中有以下属性:

ID = "id"
XPATH = "xpath"
LINK_TEXT = "link text"
PARTIAL_LINK_TEXT = "partial link text"
NAME = "name"
TAG_NAME = "tag name"
CLASS_NAME = "class name"
CSS_SELECTOR = "css selector"

操作Cookie


获取截屏


获取窗口信息


切换


执行JS代码


完整文档

class selenium.webdriver.remote.webdriver.``WebDriver(command_executor='http://127.0.0.1:4444/wd/hub', desired_capabilities=None, browser_profile=None, proxy=None, keep_alive=False, file_detector=None, options=None)

Bases: object

Controls a browser by sending commands to a remote server. This server is expected to be running the WebDriver wire protocol as defined at

https://github.com/SeleniumHQ/selenium/wiki/JsonWireProtocol

上一篇下一篇

猜你喜欢

热点阅读