Selenium+Python如何定位鼠标悬停的元素
Selenium+Python如何定位鼠标悬停的元素?
下面以登录百度后,鼠标悬停在个人中心,点击【退出登录】为例。
Selenium+Python如何定位鼠标悬停的元素?
- 一、环境
- 二、代码
- 三、定位鼠标悬停的元素需注意的点
- 四、其它说明
一、环境
Python3.7 + Pycharm2019 + selenium 3.14.1 + geckodriver 0.26.0
+jdk 8
二、代码
# 导入webdriver包
from selenium import webdriver
# 导入sleep包
from time import sleep
from selenium.webdriver.common.action_chains import ActionChains
# 实例化浏览器,注意此处的Firefox是大写的,小写的会报错。
driver = webdriver.Firefox()
# 打开要访问的地址
driver.get("https://www.baidu.com/")
# 定位元素# 使用id定位登录按钮
login_button = driver.find_element_by_id("s-top-loginbtn")
# 点击登录按钮
login_button.click()
sleep(10)
# 切换用户名登录
sign_up = driver.find_element_by_id("TANGRAM__PSP_11__footerULoginBtn")
sign_up.click()
# 使用id定位用户名输入框
username = driver.find_element_by_id("TANGRAM__PSP_11__userName")
# 输入用户名,此处需更改为你自己的账号
username.send_keys("15******73")
# 使用id定位密码输入框
password = driver.find_element_by_id("TANGRAM__PSP_11__password")
# 输入密码,此处需更改为你自己的密码
password.send_keys("****02")
# 使用id定位登录输入框
login_submit = driver.find_element_by_id("TANGRAM__PSP_11__submit")
# 点击登录按钮
login_submit.click()
sleep(5)
#。。。。从以下开始是实现鼠标悬停在个人中心,然后点击【退出登录】。。。。。
# 首先定位个人中心所在的div
element = driver.find_element_by_id("u1")
# 再通过class_name找到个人中心
attribute = element.find_element_by_id("s-top-username")
sleep(3)
# 使用move_to_element将鼠标悬停在找到的个人中心上,.perform()是调用action里面的方法,调用控件,会出现下拉选项
ActionChains(driver).move_to_element(attribute).perform()
print(attribute)
sleep(5)# 对定位到的元素“退出登录”点击操作
logout_button = driver.find_element_by_class_name("quit")
#此处同样需要使用ActionChains的click方法
ActionChains(driver).click(logout_button).perform()
print(logout_button)
sleep(3)
# 。。。。。。。。。到此为止。。。。。。。。。。。。。
# 使用xpath定位【退出】按钮
logout = driver.find_element_by_xpath("/html/body/div/div[2]/div[10]/div[3]/div/div/div[3]/div[1]/span[1]")
# 点击【退出】
logout.click()
sleep(5)
#自动关闭页面
driver.quit()
三、定位鼠标悬停的元素需注意的点
1)需要导入ActionChains包
from selenium.webdriver.common.action_chains import ActionChains
2)定位到元素后,调用ActionChains的move_to_element().perform()
ActionChains(driver).move_to_element(attribute).perform()
3)悬停后,有下拉选项,需点击其中的一项,需使用ActionChains的click方法
ActionChains(driver).click(logout_button).perform()
四、其它说明
1)要使用sleep(sec)方法,需先导包
from time import sleep
2)quit() 方法可以关闭浏览器,不然做完自动化测试后,桌面会有很多个浏览器窗口。
driver.quit()
Selenium+Python如何定位鼠标悬停的元素相关推荐
- selenium 鼠标悬浮_处理Selenium3+python3定位鼠标悬停才显示的元素
先给大家介绍下Selenium3+python3--如何定位鼠标悬停才显示的元素 定位鼠标悬停才显示的元素,要引入新模块 # coding:utf-8 from selenium import web ...
- 【Python学习之鼠标悬停点击事件】
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 前言 一.python中的鼠标悬停 二.使用步骤 1.引入库 2.以百度设置为例 前言 `提示:python自动化过程中的鼠 ...
- html鼠标悬停出现新元素,CSS:我如何将鼠标悬停在一个元素上,并显示另一个元素?...
我有一个导航面板,当您将鼠标悬停在灯具 上时,它会显示从主导航面板下拉的面板中的前5个灯具.CSS:我如何将鼠标悬停在一个元素上,并显示另一个元素? 我试图实现这个使用CSS与:hover. 这是:h ...
- css中设置图片旋转45度,css 实现缓和变量,鼠标悬停时元素旋转45度动画
可重复使用的变数transition-timing-function 属性,比内置更强大ease ,ease-in ,ease-out 和ease-in-out . HTML CSS :root { ...
- Python Tkinter 按钮鼠标悬停事件显示说明信息设置
from tkinter import * import Pmw root = Tk() button1 = Button(root, text="ABC") button1.pa ...
- python+webdriver学习鼠标键盘事件以及定位元素
设置浏览器大小:像素点 set_window_size(width,height) maximize_window() 浏览器全屏显示,不带参数 控制浏览器前进.后退: driver.forward( ...
- selenium python 一些操作和定位收集
(-)滚动条操作 python中selenium操作下拉滚动条方法汇总 selenium_webdriver(python)控制浏览器滚动条 selenium+Python(select定位) Sel ...
- vue 悬停显示另一个div_CSS或者JS实现鼠标悬停显示另一元素
想达到鼠标悬停到元素a上,显示另一个元素b,可以通过css实现也可以通过js实现. js: 写两个函数:mouseenter,mouseleave,例如:其中 $("#a").mo ...
- Selenium+Python 下载文件与上传文件
Selenium+Python 下载文件与上传文件 目录 下载文件功能 谷歌浏览器下载设置 切换iframe框架 鼠标悬浮元素定位 鼠标悬浮后出现的元素定位 上传文件 切换句柄 利用AutoIt进行桌 ...
最新文章
- 揭秘5G+AI时代的机器人世界!七大核心技术改变人类生活
- 第六届全国大学生智能汽车竞赛获奖名单
- Chapter11-RMAN Backups
- SciPy--数值计算
- PowerShell与Unix Shell对比:八大实例
- 1270: [BeijingWc2008]雷涛的小猫
- qt中生成并读取配置文件Ini
- 很喜欢VS.NET 2003对条件编译的代码提示
- 软件工程测试旅游管理系统,旅游管理系统的设计与实现
- 华为与万达签订5G战略合作协议 推动5G商业场景应用
- 【Clickhouse】Clickhouse 表引擎之 Log系列
- 【7.9校内test】T1挖地雷
- 自学考试c语言真题,自学考试《C语言程序设计》复习试题及答案
- MAC终端使用SSH连接远程服务器
- Android UI 冻结处理方法
- 【深度学习笔记(十)】之物体检测(R-CNN,Fast R-CNN, Faster R-CNN)
- 把计算机信息传到电视屏的方法,如何将电脑内容投屏到电视上?当贝市场完整版教程...
- R语言绘图基础篇-柱状图
- 博途plc连接电脑_西门子博途怎么上载plc程序
- Python机器学习与量化交易