1、操作浏览器(以firefox为例)
打开浏览器:driver = webdriver.Firefox()
访问页面:driver.get(url)
后退:driver.back()
前进:driver.forward()
关闭:driver.quit() #关闭浏览器和缓存
driver.close() #关闭当前窗口,但缓存仍在
2、定位对象
| 返回单个对象 | | ||
id | driver.find_element_by_id(“id”) | 根据id查找、定位 | ||
name | driver.find_element_by_name(“name”) | 根据name查找、定位 | ||
class_name | driver.find_element_by_class_name(“class_name”) | 根据class_name查找、定位 | ||
tag_name | driver.find_element_by_tag_name(“tag_name”) | 根据标签名查找、定位 | ||
css_selector | 类选择器 | driver.find_element_by_css_selector(“.class”) | 根据css样式进行查找、定位 | |
id选择器 | driver.find_element_by_css_selector(“#id”) | |||
标签选择器 | driver.find_element_by_css_selector(“div”) | |||
xpath | 绝对路径 \\ | 需要用反斜杠转义,且除非特殊情况,一般都不用 | ||
相对路径 // | | |||
driver.find_element_by_xpath(“//a[contains | ||||
(.,’百度’)]”) | ||||
link_text | driver.find_element_by_link_text(“贴吧”) | 精确查找 主要用于超链接<a>标签 | ||
partial_link_text | driver.find_element_by_partial_link_text(“贴”) | 模糊查找 主要用于超链接<a>标签 | ||
select | 引入Select类 | from selenium.webdriver.support.select import Select | | |
定位下拉菜单 | local = | |||
Select(local).select_by_index(0) | ||||
可见文本赋值 | Select(local).select_by_visible_text(“四川省”) | |||
value赋值 | Select(local ).select_by_value(“四川省”) | |||
索引赋值 | Select(local ).select_by_index(0) | |||
注:以上方法除select外都可以查询多个,即driver.find_elements_by_xxx,返回的是一个list对象集合 |
3、操作页面对象
写入:send_keys(value)
单击:click()
清除文本:clear()
获取当前url:current_url()
获取当前文本内容 text
获取属性值 get_attribute(“”)
获取元素是否可见 is_display()
4、辅助方法
可以通过firebug查看web页面的布局
可以通过firepath插件获取元素的path信息