个性化阅读
专注于IT技术分析

Selenium Python中的Web驱动程序方法

本文概述

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.srcmini.com/实现WebDriver方法, 并通过硒python尝试使用javascript。

程序–

# import webdriver
from selenium import webdriver
  
# create webdriver object
driver = webdriver.Firefox()
  
# get srcmini.com
driver.get( "http://www.srcmini.com/" )
  
# write script
script = "alert('Alert via selenium')"
  
# generate a alert via javascript
driver.execute_async_script(script)

输出–

浏览器生成警报, 如下所示-

javascript-Selenium-Python

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课程。


赞(0) 打赏
未经允许不得转载:srcmini » Selenium Python中的Web驱动程序方法
分享到: 更多 (0)

评论 抢沙发

评论前必须登录!

 

觉得文章有用就打赏一下文章作者

微信扫一扫打赏