本文概述
Selenium的Python模块旨在通过Python执行自动测试。 Selenium Python绑定提供了一个简单的API, 可以使用Selenium WebDriver编写功能/验收测试。要使用Selenium Python打开网页, 请签出–使用get方法导航链接– Selenium Python。能够去某个地方并不是很有用。我们真正想要做的是与页面(或更具体地说, 页面内的HTML元素)进行交互。使用硒, 检出-定位策略有多种策略来查找元素。 Selenium WebDriver提供了各种有用的方法来控制会话, 即浏览器。例如, 添加cookie, 按返回按钮, 在选项卡之间导航等。
本文围绕可用于操作DOM的各种WebDriver方法和功能以及可在Python中使用Selenium WebDriver进行的其他操作。
如何创建一个WebDriver对象?
要创建WebDriver的对象, 请从docs中导入WebDriver类, 然后基于不同的Web浏览器和功能创建一个对象。之后, 可以使用该对象执行Webdriver的所有操作。例如, 要创建Firefox的对象, 可以使用–
# import webdriver
from selenium import webdriver
# create webdriver object
driver = webdriver.Firefox()
参数–
Webdriver接受各种参数来操纵各种功能–
- required_capabilities–何时需要的功能字典
启动浏览器会话。必填参数。 - browser_profile–一个selenium.webdriver.firefox.firefox_profile.FirefoxProfile对象。
仅在请求Firefox时使用。可选的。 - 代理–一个selenium.webdriver.common.proxy.Proxy对象。浏览器会话将
如果可能, 请使用给定的代理设置启动。可选的。 - 活着–是否配置要使用的remote_connection.RemoteConnection
HTTP保持活动状态。默认为False。 - file_detector–在实例化期间传递自定义文件检测器对象。如果没有,
然后将使用默认的LocalFileDetector()。 - 选项–驱动程序options.Options类的实例
如何在Selenium中使用Webdriver?
创建一个Webdriver对象之后, 打开一个网页, 并使用以下语法和示例执行各种其他方法。人们可以执行各种操作, 例如打开新标签页, 关闭标签页, 关闭窗口, 添加Cookie, 执行javascript等。
项目实例–
让我们尝试使用http://www.srcmini02.com/实现WebDriver方法, 并通过硒python尝试使用javascript。
程序–
# import webdriver
from selenium import webdriver
# create webdriver object
driver = webdriver.Firefox()
# get srcmini02.com
driver.get( "http://www.srcmini02.com/" )
# write script
script = "alert('Alert via selenium')"
# generate a alert via javascript
driver.execute_async_script(script)
输出–
浏览器生成警报, 如下所示-
Selenium Python中的WebDriver方法
一个人可以使用Webdriver方法执行大量操作, 例如获取cookie, 获取屏幕截图等。这是webdriver中使用的重要方法的列表。
方法 | 描述 |
---|---|
add_cookie | 将cookie添加到当前会话。 |
背部 | 在浏览器历史记录中向后退一步。 |
关 | 关闭当前窗口。 |
create_web_element | 使用指定的element_id创建一个Web元素。 |
delete_all_cookies | 删除会话范围内的所有cookie。 |
delete_cookie | 删除具有给定名称的单个cookie。 |
execute_async_script | 在当前窗口/框架中异步执行JavaScript。 |
execute_script | 在当前窗口/框架中同步执行JavaScript。 |
前锋 | 在浏览器历史记录中前进一步。 |
fullscreen_window | 调用窗口管理器特有的”全屏”操作 |
get_cookie | 按名称获取一个cookie。如果找到则返回cookie, 否则返回None。 |
get_cookies | 返回一组词典, 对应于当前会话中可见的cookie。 |
get_log | 获取给定日志类型的日志 |
get_screenshot_as_base64 | 以base64编码的字符串的形式获取当前窗口的屏幕快照, 该字符串在HTML的嵌入式图像中很有用。 |
get_screenshot_as_file | 将当前窗口的屏幕快照保存到PNG图像文件中。 |
get_screenshot_as_png | 以二进制数据获取当前窗口的屏幕快照。 |
get_window_position | 获取当前窗口的x, y位置。 |
get_window_rect | 获取窗口的x, y坐标以及当前窗口的高度和宽度。 |
get_window_size | 获取当前窗口的宽度和高度。 |
hidden_wait | 设置粘性超时, 以隐式等待找到元素, |
最大化窗口 | 最大化webdriver正在使用的当前窗口 |
minimal_window | 调用窗口管理器特有的”最小化”操作 |
放弃 | 退出驱动程序并关闭每个关联的窗口。 |
刷新 | 刷新当前页面。 |
set_page_load_timeout | 设置在引发错误之前等待页面加载完成的时间。 |
set_script_timeout | 设置脚本在execute_async_script调用期间应等待的时间, 然后抛出错误。 |
set_window_position | 设置当前窗口的x, y位置。 (window.moveTo) |
set_window_rect | 设置窗口的x, y坐标以及当前窗口的高度和宽度。 |
current_url | 获取当前页面的URL。 |
current_window_handle | 返回当前窗口的句柄。 |
page_source | 获取当前页面的源。 |
标题 | 返回当前页面的标题。 |
注意怪胎!巩固你的基础Python编程基础课程和学习基础知识。
首先, 你的面试准备可通过以下方式增强你的数据结构概念:Python DS课程。
评论前必须登录!
注册