定位方法不仅限于这些,我也会随时补充,大家有其他补充或建议可以在评论区一起讨论哦!!!
 
 
【打开链接】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. beego入门

    beego的官方仓库地址是 https://github.com/beego/beego 为什么要特别说明这个事情呢?因为我们引入的包地址,有可能是从官方fork的,特别是beego,有的教程上通过g ...

  2. Back Propagation - Python实现

    算法特征①. 统一看待线性运算与非线性运算; ②. 确定求导变量loss影响链路; ③. loss影响链路梯度逐级反向传播. 算法推导Part Ⅰ以如下简单正向传播链为例, 引入线性运算与非线性运算符 ...

  3. 2018GPLT

    2018GPLT 7-1 天梯赛座位分配 一共有n所学校参加比赛,每所学校有\(a_i\)只队伍,每只队伍共10人,要保证每个学校的所有队员不能相邻就坐,令每一所学校的队伍排成一排纵列,然后从第一所学 ...

  4. java写 变量到文件

    import java.io.BufferedReader; import java.io.File;import java.io.FileReader; import java.io.IOExcep ...

  5. linux dma

    https://bootlin.com/pub/conferences/2015/elc/ripard-dmaengine/ripard-dmaengine.pdf https://biscuitos ...

  6. 如何查看nvidia官网发布的tensorrt镜像中都包含哪些包,trt版本是多少,cuda版本是多少?如何查看nvidia官网发布的triton镜像中都包含哪些包?

    在这里查看trt镜像中包含哪些内容:https://docs.nvidia.com/deeplearning/tensorrt/container-release-notes/rel_21-07.ht ...

  7. gdb 常用命令总结

    安装插件 1. 安装GDB增强工具 (gef) * wget -q -O- https://github.com/hugsy/gef/raw/master/scripts/gef.sh | sh2. ...

  8. PTA-R7-1 圆形体体积计算器

    ​R7-1 圆形体体积计算器 分数 20 全屏浏览题目 切换布局 作者 张高燕 单位 浙江大学 本题要求实现一个常用圆形体体积的计算器.计算公式如下: 球体体积 V=4​π*r3/3,其中r是球体半径 ...

  9. outlook初用

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

  10. C++实现线性表-顺序表的合并操作代码

    #include<iostream>#include<cstdlib>//C++动态分配存储空间using namespace std;#define OK 1#define ...