[python模块]selenium基本使用

Posted Shuranima

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了[python模块]selenium基本使用相关的知识,希望对你有一定的参考价值。

selenium简介:

Selenium是一个用于测试网站的自动化测试工具,支持多系统Windows、Linux、IOS、Android等,支持各种浏览器包括Chrome、Firefox、Safari等主流界面浏览器,同时也支持phantomJS无界面浏览器。

selenium安装

pip install selenium

Chrome驱动

http://npm.taobao.org/mirrors/chromedriver/

https://chromedriver.storage.googleapis.com/index.html

Firefox驱动

https://github.com/mozilla/geckodriver/releases

自行查看浏览器版本,下载对应版本即可。

 

Selenium Python 教程相关:

http://www.testclass.net/selenium_python/

https://www.selenium.dev/documentation/en/getting_started/

基本使用

1.创建对象

bro = webdriver.Chrome(executable_path =  ./chromedriver.exe)         # 获取浏览器对象,并会打开浏览器
bro.get(http://www.baidu.com/)                                        # 发起get请求,浏览器会打开http://www.baidu.com网站

 

2.定位方式

1)id  

find_element_by_id            #通过元素id定位

2)name

find_element_by_name           #通过元素name定位

3)class name

find_element_by_class_name        #通过类名进行定位

4)tag name

find_element_by_tag_name         #通过标签定位

5)link text

find_element_by_link_text        #通过完整超链接定位

6)partial

find_element_by_partial_link_text    #通过部分链接定位

7)xpath

find_element_by_xpath          #通过xpath表达式定位

8)css selector

find_elements_by_css_selector      #通过css选择器进行定位

 

webdriver模块常用方法

1.控制浏览器操作的一系列方法

 from selenium import webdriver

set_window_size()          # 设置浏览器的大小

maximize_window()           # 设置窗口最大化

back()                # 控制浏览器后退

forward()                # 控制浏览器前进

refresh()               # 刷新当前页面

clear()                # 清除文本

send_keys (value)           # 模拟按键输入

click()                # 单击元素

submit()               # 用于提交表单

get_attribute(name)          # 获取元素属性值

is_displayed()             # 设置该元素是否用户可见

size                 # 返回元素的尺寸

text                  # 获取元素的文本 

options = webdriver.ChromeOptions()

# 设置为开发者模式,防止网站识别

options.add_experimental_option(
‘excludeSwitches‘, [‘enable-automation‘])

 

2.鼠标事件

鼠标操作的方法由 ActionChains 类提供。

#1.引入 ActionChains 类 from selenium.webdriver.common.action_chains import ActionChains

1)ActionChains(driver)             # 构造ActionChains对象

2)context_click()                 # 执行鼠标悬停操作

3)move_to_element(above)              # 右击

4)double_click()                # 双击 

5)drag_and_drop()                # 拖动

6)move_to_element(above)            # 执行鼠标悬停操作

7)context_click()                # 用于模拟鼠标右键操作, 在调用时需要指定元素定位

8)perform()                   # 执行所有 ActionChains 中存储的行为,可以理解成是对整个操作的提交动作

3.键盘事件

elenium中的Key模块为我们提供了模拟键盘按键的方法,那就是send_keys()方法。它不仅可以模拟键盘输入,也可以模拟键盘的操作。

常用的键盘操作如下:

模拟键盘按键             说明
send_keys(Keys.BACK_SPACE)     # 删除键(BackSpace)
send_keys(Keys.SPACE)        # 空格键(Space)
send_keys(Keys.TAB)          # 制表键(Tab)
send_keys(Keys.ESCAPE)       # 回退键(Esc)
send_keys(Keys.ENTER)        # 回车键(Enter)
组合键的使用

模拟键盘按键             说明
send_keys(Keys.CONTROL,‘a’)    # 全选(Ctrl+A)
send_keys(Keys.CONTROL,‘c’)      # 复制(Ctrl+C)
send_keys(Keys.CONTROL,‘x’)      # 剪切(Ctrl+X)
send_keys(Keys.CONTROL,‘v’)      # 粘贴(Ctrl+V)
send_keys(Keys.F1…Fn)             # 键盘 F1…Fn

 

 

声明:以上内容部分转载「凯耐」文章(Python Selenium库的使用 )

更多详细内容请参考原文连接:https://blog.csdn.net/weixin_36279318/article/details/79475388

以上是关于[python模块]selenium基本使用的主要内容,如果未能解决你的问题,请参考以下文章

Python+Selenium中级篇之2-Python中类/函数/模块的简单介绍和方法调用

python+selenium,如何把登录模块设计为公共模块?

Selenium+python自动化12+日志logging基本用法高级用法

Selenium_python自动化第一个测试案例(代码基本规范)

快速掌握Python Selenium Web自动化:二)Selenium操纵浏览器的最基本用例(转载)

Python学习--Selenium模块学习