目录:
方法
-
clear()
清空如果当前元素中有文本,则清空文本
-
click()
单击点击当前元素
-
get_attribute(name)
获取对象属性获取元素的attribute/property
优先返回完全匹配属性名的值,如果不存在,则返回属性名中包含name的值。
通常在我们使用xpath时,可以使用
@class
的方式直接获取节点的属性,如下所示:page.xpath('//div/a/@class')
但在
Selenium
中不支持这种用法,只能在找到节点后,使用get_attribute(name)
方法来获取属性:page.xpath('//div/a').get_attribute('class')
同样的,
Selenium
同样不支持Xpath中的string()
,text()
这类的方法,只能获取元素节点。 -
screenshot(filename)
获取截图获取当前元素的截图,保存为png,最好用绝对路径
-
send_keys(value)
模拟键入元素给当前元素模拟输入
webelement的此方法在Chrome中应该是有bug,无法使用。
-
submit()
提交表单提交表单
在页面元素中,同样提供find_elements_by_*
等查找方法,可以将查找范围限制到当前元素。
属性
-
text
获取当前元素(find对象)的文本内容
-
tag_name
获取当前元素的标签名
-
size
获取当前元素的大小
-
screenshot_as_png
将当前元素截屏并保存为png格式的二进制数据
-
screenshot_as_base64
将当前元素截屏并保存为base64编码的字符串
-
rect
获取一个包含当前元素大小和位置的字典
-
parent
获取当前元素的父节点
-
location
当前元素的位置
-
id
当前元素的id值,主要用来selenium内部使用,可以用来判断两个元素是否是同一个元素
Keys
我们经常需要模拟键盘的输入,当输入普通的值时,在send_keys()
方法中传入要输入的字符串就好了。
但是我们有时候会用到一些特殊的按键,这时候就需要用到我们的Keys类。
简例
from selenium.webdriver.common.keys import Keys elem.send_keys(Keys.CONTROL, 'c')
属性
这个Keys
类有很多属性,每个属性对应一个按键。所有的属性如下所示:
ADD = u'ue025' ALT = u'ue00a' ARROW_DOWN = u'ue015' ARROW_LEFT = u'ue012' ARROW_RIGHT = u'ue014' ARROW_UP = u'ue013' BACKSPACE = u'ue003' BACK_SPACE = u'ue003' CANCEL = u'ue001' CLEAR = u'ue005' COMMAND = u'ue03d' CONTROL = u'ue009' DECIMAL = u'ue028' DELETE = u'ue017' DIVIDE = u'ue029' DOWN = u'ue015' END = u'ue010' ENTER = u'ue007' EQUALS = u'ue019' ESCAPE = u'ue00c' F1 = u'ue031' F10 = u'ue03a' F11 = u'ue03b' F12 = u'ue03c' F2 = u'ue032' F3 = u'ue033' F4 = u'ue034' F5 = u'ue035' F6 = u'ue036' F7 = u'ue037' F8 = u'ue038' F9 = u'ue039' HELP = u'ue002' HOME = u'ue011' INSERT = u'ue016' LEFT = u'ue012' LEFT_ALT = u'ue00a' LEFT_CONTROL = u'ue009' LEFT_SHIFT = u'ue008' META = u'ue03d' MULTIPLY = u'ue024' NULL = u'ue000' NUMPAD0 = u'ue01a' NUMPAD1 = u'ue01b' NUMPAD2 = u'ue01c' NUMPAD3 = u'ue01d' NUMPAD4 = u'ue01e' NUMPAD5 = u'ue01f' NUMPAD6 = u'ue020' NUMPAD7 = u'ue021' NUMPAD8 = u'ue022' NUMPAD9 = u'ue023' PAGE_DOWN = u'ue00f' PAGE_UP = u'ue00e' PAUSE = u'ue00b' RETURN = u'ue006' RIGHT = u'ue014' SEMICOLON = u'ue018' SEPARATOR = u'ue026' SHIFT = u'ue008' SPACE = u'ue00d' SUBTRACT = u'ue027' TAB = u'ue004' UP = u'ue013'