首页 > 编程语言 >python selenium 浏览器操作 鼠标操作 键盘操作

python selenium 浏览器操作 鼠标操作 键盘操作

时间:2023-06-08 11:45:43浏览次数:45  
标签:webdriver python selenium driver send Keys keys 操作

窗口截屏

    # 截图
    driver.get_screenshot_as_file("C:\\Users\\95744\\Desktop\\test01\\test.png")

关闭浏览器

webdriver.quit()

获取当前url

driver.current_url 

浏览器前进、后退、刷新

#后退
driver.back() 
#前进
driver.forward() 
#刷新
driver.refresh() 

获取标题

driver.title 

webdriver常用方法

  • 向文本框元素输入内容

#send_keys()
driver.find_element(By.ID,,"kw").send_keys("这是文本内容")

 

  • 清除文本框元素的内容

#clear()
driver.find_element(By.ID,,"kw").clear()
  • 点击元素(单击)

  • #click()
    driver.find_element(By.ID,,"su").click()

    获取元素的属性值

#get_attribute()
ele = driver.find_element(By.ID,"su")
print(ele.get_attribute("value"))
  • 检测元素是否可见

#is_displayed()
print(ele.is_displayed())#返回结果为True或者False
  • 返回元素的尺寸

print(ele.size)
  • 获取元素的文本值

print(ele.text)

键盘操作

1、selenium 提供了一整套的模拟键盘操作事件

2、模拟键盘的操作需要先导入键盘模块:from selenium.webdriver.common.keys import Keys

3、模拟 enter 键,可以用 send_keys(Keys.ENTER)

4、其它常见的键盘操作:

键盘 F1 刡 F12:send_keys(Keys.F1) 把 F1 改成对应的快捷键

复制 Ctrl+C:send_keys(Keys.CONTROL,'c')

粘贴 Ctrl+V:send_keys(Keys.CONTROL,'v')

全选 Ctrl+A:send_keys(Keys.CONTROL,'a')

剪切 Ctrl+X:send_keys(Keys.CONTROL,'x')

制表键 Tab: send_keys(Keys.TAB)

鼠标操作

1、鼠标不仅仅可以点击(click),还有其它的操作,如:鼠标悬停在某个元素上,鼠标点击,鼠标按住某个按钮拖动

2、鼠标事件需要先导入模块:from selenium.webdriver.common.action_chains import ActionChains

3、perform() 执行所有 ActionChains 中的行为 move_to_element() 鼠标悬停

4、除了常用的鼠标悬停事件外,还有 点击击鼠标:context_click();双击鼠标:double_click()

# coding:utf-8
import time
from selenium.webdriver.common.by import By
from selenium import webdriver
from selenium.webdriver.common.action_chains import ActionChains
driver = webdriver.Chrome()
driver.get("https://www.baidu.com/")
time.sleep(5)
driver.maximize_window()
# 鼠标悬停在设置按钮上
ele = driver.find_element(By.ID,"s-usersetting-top")
ActionChains(driver).move_to_element(ele).perform()

标签:webdriver,python,selenium,driver,send,Keys,keys,操作
From: https://www.cnblogs.com/yund/p/17465732.html

相关文章

  • python Qt实现最简单的程序
    1、创建一个程序,实例一个对象2、让这个对象跑起来3、创建组件4、设置标题5、展示出来点击查看代码fromPySide2.QtWidgetsimportQApplication,QMessageBoxfromPySide2.QtUiToolsimportQUiLoaderif__name__=="__main__":app=QApplication(sys.argv)w......
  • python 日志
    在自动化测试中,可以使用以下几种方式记录日志:1.使用内置的`print()`函数:#在需要记录日志的地方使用print()函数输出日志信息print("这是一条日志信息")2.使用标准库中的`logging`模块:importlogging#配置日志输出格式和级别logging.basicConfig(level=logging.INFO......
  • 提高生产力:文件和IO操作(ApacheCommonsIO-汉化分享)
          幸运的是,ApacheCommonsIO等开源组件已经帮我们实现了。      我们可以不用重复造轮子了。1.资料地址1.1官方网站:http://commons.apache.org/proper/commons-io/1.2下载地址:http://commons.apache.org/proper/commons-io/download_io.cgi2.简要介绍(......
  • 【python基础】循环语句-break关键字
    1.break关键字break关键字,其作用是在循环中的代码块遇到此关键字,立刻跳出整个循环,执行循环外的下一条语句。其在while和for循环中的作用示意图如下:1.1break在while循环中的使用1.1.1不加else语句比如我们通过键盘输入单词,输出刚才的单词,编写程序如下所示:我们发现当我们输......
  • Python+Redis学习笔记
    首先,通过pip来安装操作redis的相关包,pipinstallredis然后导入我们要使用的模块,formredis.ClientimportRedis然后,通过docker启动redis,fromredis.clientimportRedisr=Redis(host="0.0.0.0",port=6379,db=0,password="")#r.set("kol_height",187)res=r.......
  • python 解析HTML和XML文档
    一、BeautifulSoupBeautifulSoup是一个Python包,用于解析HTML和XML文档。它可以快速而方便地从网页中提取信息,并以易于使用的方式对其进行处理。它支持各种解析器,包括内置的Python解析器和第三方解析器,例如lxml和html5lib。二、对标签提取代码示列以下是使用BeautifulSoup解析H......
  • 初步了解的python的正则表达式
    Python正则表达式|菜鸟教程(runoob.com)Python正则表达式 regex正则表达式是一个特殊的字符序列,它能帮助你方便的检查一个字符串是否与某种模式匹配。Python自1.5版本起增加了re模块,它提供Perl风格的正则表达式模式。re模块使Python语言拥有全部的正则表达式功能......
  • #yyds干货盘点#用Python实现简单的图像识别
    在这篇文章中,我们将使用Python和TensorFlow来实现一个简单的图像识别系统。我们将使用经典的MNIST数据集,这是一个包含手写数字的数据集,用于训练和测试图像识别系统。一、准备环境首先,我们需要安装所需的库。在这里,我们将使用TensorFlow和Keras。您可以使用以下命令安装这些库:pip......
  • Python程序与设计
    2-27在命令行窗口中启动的Python解释器中实现在Python自带的IDLE中实现print("Helloworld")编码规范每个import语句只导入一个模块,尽量避免一次导入多个模块不要在行尾添加分号“:”,也不要用分号将两条命令放在同一行建议每行不超过80个字符使用必要的空行可以增加代码的可读性运算......
  • centos设置python计划任务
    前言提示:很久很久以前用python写了一个网站自动签到的脚本,需要一台服务器每天自动去帮我签到(赚一点微薄的网站积分,嘤嘤嘤),一直挂在朋友服务器上,现在他的快过期了(同是天涯穷苦人),前几天斥巨资(96rmb)买了一个阿里云的应用服务器一年(刚好有个阿里云域名),把我的python脚本弄过来吧~1、升级c......