定位方法不仅限于这些,我也会随时补充,大家有其他补充或建议可以在评论区一起讨论哦!!!
 
 
【打开链接】drive.get(“https://www.baidu.com”)
 
【用id定位】drive.find_element_by_id(“kw”).send_keys(“小狗”)
                     drive.find_element_by_id(“su”).click()
 
【用name定位】drive.find_element_by_name(“wd”).send_keys(“小狗”)
 
【CSS定位】drive.find_element_by_css_selector("#su").click()
 
【文字链接定位】drive.find_element_by_link_text(u"视频").click()
                             #u是因为是汉字 u"视频"是个链接
 
【部分文字链接定位】browser.find_element_by_partial_link_text(“hao”).click()
 
【XPath 定位】 drive.find_element_by_xpath("//*[@id=‘kw’]").send_keys(“小狗”)
 
【点击对象】drive.find_element_by_id(“su”).click()
 
【在对象上模拟按键输入】drive.find_element_by_id(“kw”).send_keys(“小狗”)
 
【 清除对象的内容】drive.find_element_by_id(“kw”).clear()
 
【提交表单】driver.find_element_by_id(“su”).submit()
                   (把click 换成submit 可以达到相同的效果)
 
【添加等待】(import time) time.sleep(3)
 
【只能等待】 browser.implicitly_wait(30)
 
【打印tile】 print driver.title
 
【打印url】print driver.current_url
 
【浏览器最大化】 browser = webdriver.Firefox()
 
【设置浏览器宽、高】 browser.set_window_size(480, 800)
 
【页面滚动条拖到底部】
js="var q=document.documentElement.scrollTop=10000
driver.execute_script(js)
 
【页面滚动条拖到顶部】
js="var q=document.documentElement.scrollTop=0
driver.execute_script(js)
 
【操作浏览器的前进、后退】
browser.back()
browser.forward()
 
【ctrl+a 全选输入框内容】
driver.find_element_by_id(“kw”).send_keys(Keys.CONTROL,‘a’)
 
【ctrl+x 剪切输入框内容】
driver.find_element_by_id(“kw”).send_keys(Keys.CONTROL,‘x’)
 
【右键/双击】
qqq =driver.find_element_by_xpath(".//*[@id=‘s_btn_wr’]")
ActionChains(driver).context_click(qqq).perform() #右键
ActionChains(driver).double_click(qqq).perform() #双击
 
【定位元素的原位置】
element = driver.find_element_by_id(“s_btn_wr”)
 
【定位元素要移动到的目标位置】
target = driver.find_element_by_class_name(“btn”)
 
【执行元素的移动操作】
ActionChains(driver).drag_and_drop(element, target).perform()
 
【移动鼠标】
qqq =driver.find_element_by_xpath(".//*[@id=‘s_btn_wr’]")
ActionChains(driver).move_to_element(btn).perform()
 
【点击空白区域】需要导入命令:from selenium.webdriver.common.action_chains import ActionChains

action = ActionChains (driver)
action.move_by_offset(200, 100).click().perform() #200,100是坐标

【转移到新的页签】

windows = driver.window_handles#移动句柄为当前页面
driver.switch_to.window(windows[-1])

【刷新当前页面】

driver.refresh()

【在时间框中自动获取离当前时间未来时间并输入】
import datetime
today=datetime.datetime.today()
day=(today+datetime.timedelta(hours=2)).strftime("%Y-%m-%d %H:%M")
driver.find_element(By.XPATH,'xxx').send_keys(day)
sleep(2)

自动化测试工具selenium的常用定位方法的更多相关文章

  1. [python爬虫] Selenium常见元素定位方法和操作的学习介绍(转载)

    转载地址:[python爬虫] Selenium常见元素定位方法和操作的学习介绍 一. 定位元素方法 官网地址:http://selenium-python.readthedocs.org/locat ...

  2. Selenium Web元素定位方法

    Selenium是用于Web应用测试的自动化测试框架,可以实现跨浏览器和跨平台的Web自动化测试.Selenium通过使用WebDriver API来控制web浏览器,每个浏览器都都有一个特定的Web ...

  3. python+selenium实现163邮箱登陆—iframe动态ID定位 及常用定位方法

    今天发现之前的登录163邮箱脚本定位不到iframe了,原因是iframe拼接了动态ID,修改后的脚本如下: from selenium import webdriver driver = webdr ...

  4. 软件WEB自动化测试工具之智能元素定位

    江湖一直有着这么一句名言“天下武功,唯快不破".那么在软件测试领域,自然而然我们会想到软件自动化测试.软件自动化测试的实现自然离不开软件自动化测试工具.软件自动化测试工具是软件自动化的载体, ...

  5. python自动化测试工具selenium使用指南

    概述 selenium是网页应用中最流行的自动化测试工具,可以用来做自动化测试或者浏览器爬虫等.官网地址为:https://www.selenium.dev/.相对于另外一款web自动化测试工具QTP ...

  6. [python爬虫] Selenium常见元素定位方法和操作的学习介绍

    这篇文章主要Selenium+Python自动测试或爬虫中的常见定位方法.鼠标操作.键盘操作介绍,希望该篇基础性文章对你有所帮助,如果有错误或不足之处,请海涵~同时CSDN总是屏蔽这篇文章,再加上最近 ...

  7. Selenium常见元素定位方法和操作的学习介绍

    参考地址: https://www.cnblogs.com/eastmount/p/4810690.html 这篇文章主要Selenium+Python自动测试或爬虫中的常见定位方法.鼠标操作.键盘操 ...

  8. 开源Web自动化测试工具Selenium IDE

    Selenium IDE(也有简写SIDE的)是一款开源的Web自动化测试工具,它实现了测试用例的录制与回放. Selenium IDE目前版本为 3.6 系列,支持跨浏览器运行,所以IDE的UI从原 ...

  9. 【tips】自动化测试工具 - selenium和phantomJS

    ### 目录清单 selenium和phantomjs概述 selenium常用API 案例操作:模拟登陆csdn 1. selenium和phantomJS是什么东西 selenium是一套web网 ...

  10. python网络爬虫之自动化测试工具selenium[二]

    目录 前言 一.获取今日头条的评论信息(request请求获取json) 1.分析数据 2.获取数据 二.获取今日头条的评论信息(selenium请求获取) 1.分析数据 2.获取数据 房源案例(仅供 ...

随机推荐

  1. MySQL无法同时执行多条语句解决办法 Dbeaver

    一.场景 说明:在数据库中同时执行多条语句,提示语法错误,如下图: 二.解决办法 第一步:在每条语句最后加上分号(;)表示本条语句结束: 第二步:在数据库连接串上设置 allowMultiQuerie ...

  2. iOS基础 - SceneDelegate

    前言 1 - 自从 Xcode11 发布以来,当你使用新 XCode 创建一个新的 iOS 项目时 SceneDelegate 会被默认创建 2 - 在 iOS 13 后 SceneDelegate ...

  3. Redis后端面试题

    目录 简要说一下什么是Redis? 为什么要⽤Redis(缓存)? 为什么要⽤Redis⽽不⽤map/guava做缓存? Redis与Memcached的区别 Redis的应⽤场景 redis为什么那 ...

  4. oracle学习之undo的基本知识及事务与undo、数据块的关联

    通过自己学习总结的这些undo知识能够让大家都能深刻了解oracle的undo相关原理. 一.undo撤销表空间的作用 撤销表空间通常称为undo表空间:undo表空间的段也称为撤销段或undo段.回 ...

  5. 全链路压测SOP

    压测模型构建:人工 线上(大促)流量数据 (数据脱敏) 日常流量数据 业务方新的特性产生的变更数据 友商做过的事情 压测模型构建:自动 流程包括:录制-清洗-回放 (目前能做好的公司非常少) 压测标准 ...

  6. Vulnhub 靶场 HACK ME PLEASE: 1

    Vulnhub 靶场 HACK ME PLEASE: 1 一.前期准备 靶机下载地址:https://www.vulnhub.com/entry/hack-me-please-1,731/ 攻击机ka ...

  7. Linux firewall 命令

    常用命令 开启端口命令 firewall-cmd --zone=public--add-port=443/tcp --permanent --zone  #作用域 --add-port=80/tcp ...

  8. outlook初用

    以前一直用 Foxmail 收发邮件,由于公司用到 sharepoint 可以跟 outlook 绑定,试了下 outlook. 第一次用 outlook 以为也是跟 foxmail 一样简单配置一下 ...

  9. Iframe 默认高度、宽度

    项目中还在使用 Iframe ,一次看代码时发现 Iframe 没有指定高度.宽度,可是在页面上显示的时候却有高度.宽度.想着应该是 Iframe 的默认值,于是写了一个简单的页面,代码如下: 1 & ...

  10. python--线性回归

    首先先安装要用到的包:sklearn,顾名思义机器学习包 import matplotlib.pyplot as plt import numpy as np import pandas as pd ...