02 Selenium 方法

Posted primice

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了02 Selenium 方法相关的知识,希望对你有一定的参考价值。

定位元素方法

find_element_by_id(id): 通过元素id定位
find_element_by_name(name): 通过元素name定位
find_element_by_class_name(class_name): 通过元素class定位
find_element_by_tag_name(tag_name): 通过元素标签定位
find_element_by_xpath(xpath): 通过xpath定位
find_element_by_css_selector(css_selector): 通过css选择器定位
find_elements_by_id(id): 通过元素id定位
find_elements_by_name(name): 通过元素name定位
find_elements_by_class_name(class_name): 通过元素class定位
find_elements_by_tag_name(tag_name): 通过元素标签定位
find_elements_by_xpath(xpath): 通过xpath定位
find_elements_by_css_selector(css_selector): 通过css选择器定位

操作元素方法

click(link): 点击元素
submit(form): 提交表单
input(text): 输入文本
clear(): 清除文本
send_keys(text): 输入文本
accept_alert(): 接受弹窗
is_displayed(): 是否显示
get_attribute(attribute): 获取属性
get_attribute(attribute, wait=None): 获取属性
get_text(): 获取文本
get_attribute(\'value\'): 获取文本
get_attribute(\'innerHTML\'): 获取文本
contains(text): 包含文本
has_attr(attribute): 是否有属性
has_class(class_name): 是否有class
has_css(\'selector\'): 是否有css
is_enabled(): 是否可用
is_selected(): 是否选中
switch_to(): 切换
switch_to().frame(): 切换到frame
close(): 关闭当前窗口
quit(): 退出浏览器

等待方法

wait_for_page_to_load(): 等待页面加载
wait_for_element_tobeclickable(): 等待元素可点击
wait_for_element_tobepresent(): 等待元素出现
wait_for_page_to_load(): 等待页面加载
wait_for_element_tobeclickable(): 等待元素可点击
wait_for_element_tobepresent(): 等待元素出现
wait_for_element_visible(): 等待元素可见
wait_for_element_not_visible(): 等待元素不可见
wait_for_element_enabled(): 等待元素可用
wait_for_element_disabled(): 等待元素不可用
wait_for_element_tobeclickable(): 等待元素可点击
wait_for_text_to_equal(): 等待文本相等
wait_for_element_scrolled_intoview(): 等待元素滚动到视图

浏览器操作方法

open(url): 打开网页
get(url): 打开网页
close(): 关闭当前窗口
switch_to().window(handle): 切换到窗口
switch_to().frame(handle): 切换到frame
accept_alert(): 接受弹窗
is_alert_present(): 是否有弹窗
is_element_present(selector): 是否有元素
get_attribute(\'location\'): 获取网页地址
get(\'location\'): 获取网页地址
get(\'title\'): 获取网页标题
get(\'url\'): 获取网页地址
find_element(by=By.CSS_SELECTOR, value=\'cssSelector\').click(): 点击元素

WebDriver实例方法

start_session(): 启动会话
quit(): 退出浏览器

python + selenium 常用方法

1.获取当前页面的Url
  方法:current_url
  实例:driver.current_url 或 print(five.current_url)


--------------------------------------------------------------------------------
2.获取元素坐标
  方法:location
  解释:首先查找到你要获取元素的,然后调用location方法
  实例:driver.find_element_by_xpath("xpath").location

--------------------------------------------------------------------------------
3.表单的提交
  方法:submit
  解释:查找到表单(from)直接调用submit即可
  实例:driver.find_element_by_id("form1").submit()

--------------------------------------------------------------------------------
4.获取CSS的属性值
  方法:value_of_css_property(css_name)
  实例:driver.find_element_by_css_selector("input.btn").value_of_css_property("input.btn")
--------------------------------------------------------------------------------
5.获取元素的属性值
  方法:get_attribute(element_name)
  实例:driver.find_element_by_id("kw").get_attribute("kw")
--------------------------------------------------------------------------------
6.判断元素是否被选中
  方法:is_selected()
  实例:driver.find_element_by_id("form1").is_selected()
--------------------------------------------------------------------------------
7.返回元素的大小
  方法:size
  实例:driver.find_element_by_id("iptPassword").size
  返回值:{‘width‘: 250, ‘height‘: 30}
--------------------------------------------------------------------------------
8.判断元素是否显示
  方法:is_displayed()
  实例:driver.find_element_by_id("iptPassword").is_displayed()
--------------------------------------------------------------------------------
9.判断元素是否被使用
  方法:is_enabled()
  实例:driver.find_element_by_id("iptPassword").is_enabled()
--------------------------------------------------------------------------------
10.获取元素的文本值
  方法:text
  实例:driver.find_element_by_id("iptUsername").text
--------------------------------------------------------------------------------
11.元素赋值
  方法:send_keys(*values)
  实例:driver.find_element_by_id("iptUsername").send_keys(‘admin‘)
--------------------------------------------------------------------------------
12.返回元素的tagName
  方法:tag_name
  实例:driver.find_element_by_id("iptUsername").tag_name
--------------------------------------------------------------------------------
13.删除浏览器所有的cookies
  方法:delete_all_cookies()
  实例:driver.delete_all_cookies()
--------------------------------------------------------------------------------
14.删除指定的cookie
  方法:delete_cookie(name)
  实例:deriver.delete_cookie("my_cookie_name")
--------------------------------------------------------------------------------
15.关闭浏览器
  方法:close()
  实例:driver.close()
--------------------------------------------------------------------------------
16.关闭浏览器并且退出驱动程序
  方法:quit()
  实例:driver.quit()
--------------------------------------------------------------------------------
17.返回上一页
  方法:back()
  实例:driver.back()
--------------------------------------------------------------------------------
18.清空输入框
  方法:clear()
  实例:driver.clear()
--------------------------------------------------------------------------------
19.浏览器窗口最大化
  方法:maximize_window()
  实例:driver.maximize_window()
--------------------------------------------------------------------------------
20.查看浏览器的名字
  方法:name
  实例:drvier.name
--------------------------------------------------------------------------------
21.返回当前会话中的cookies
  方法:get_cookies()
  实例:driver.get_cookies()
--------------------------------------------------------------------------------
22.根据cookie name 查找映射Value值
  方法:driver.get_cookie(cookie_name)
  实例:driver.get_cookie("NET_SessionId")
--------------------------------------------------------------------------------
23.截取当前页面
  方法:get_screenshot_as_file(filename)
  实例:driver.get_screenshot_as_file("D:\Program Files\Python27\NM.bmp")
--------------------------------------------------------------------------------
24.获取当前窗口的坐标
  方法:get_window_position()
  实例:driver.get_window_position()
--------------------------------------------------------------------------------
25.获取当前窗口的长和宽
  方法:get_window_size()
  实例:driver.get_window_size()
--------------------------------------------------------------------------------







































































































以上是关于02 Selenium 方法的主要内容,如果未能解决你的问题,请参考以下文章

selenium+python学习——webdriver总结

Selenium02篇python+selenium实现Web自动化:鼠标操作和键盘操作!

selenium 中是不是有任何方法可以找到我们必须找到的元素的标签类型

使用 Selenium 使用 WindowHandles 跟踪和迭代选项卡和窗口的最佳方法

python--selenium一种实用的自动生成测试HTML报告方法--HTMLTestRunner

python+selenium元素定位之XPath学习02