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()
: 退出浏览器
本文来自博客园,作者:'Radio',转载请注明原文链接:https://www.cnblogs.com/primice/p/17397403.html
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 跟踪和迭代选项卡和窗口的最佳方法