1.元素的定位

1)元素定位方法的分类(调用方式):

1.直接调用型(推荐方式)

driver.find_element_by_xxx(value)

2.使用By类型(需要导入By)

from selenium.webdriver.common.by import By                             driver.find_element(By.xxx,value)

2)元素定位方法的分类(按定位方式):

根据name查:

classname:

link_text

partial link text

xpath:

css:

tag name:

3)八种定位方式的示例:

1. driver.find_element_by_xpath(value)

2. driver.find_element_by_css_selector(value)

3. driver.find_element_by_id(value)

4. driver.find_element_by_name(value)

5. driver.find_element_by_class_name(value)

6. driver.find_element_by_tag_name(value)

案例:    必应搜索

7. driver.find_element_by_link_text(value)

8. driver.find_element_by_partial_link_text(value)

2.元素的操作

对元素的相关操作,一般要先获取到元素,再调用相关方法

element = driver.find_element_by_xxx(value)

1)点击和输入

点击操作             element.click()

清空/输入操作(只能操作可以输入文本的元素)

element.clear()            清空输入框

element.send_keys(data)        输入数据                  案例:

1.打开百度搜索        2.             搜索关键字 selenium

3.清空

4.搜索python

3.多标签之间的切换

1)获取所有窗口的句柄

handles = driver. window_handles

调用该方法会得到一个列表,在selenium运行过程中的每一个窗口都有一

个对应的值存放在里面。

2)通过窗口的句柄进入的窗口

driver.switch_to_window(handles[n])

driver.switch_to.window(handles[n])

通过窗口句柄激活进入某一窗口     案例:         58同城租房信息:http://bj.58.comduobiaodan 多

4.多表单的切换

1)什么是多表单?

实际上就是使用iframe/frame,引用了其他页面的链接,真正的页面数据并没有出现

在当前源码中,但是在浏览器中我们看到,简单理解可以使页面中开了一个窗口显

示另一个页面

2)处理方法

直接使用id值切换进表单                                     driver.switch_to.frame(value)/driver.switch_to_frame(value)

定位到表单元素,再切换进入

el = driver.find_element_by_xxx(value)

driver.switch_to.frame(el)    /driver.switch_to_frame(el)

6.弹出框操作

1) 进入到弹出框中

driver.switch_to.alert

2) 接收警告

accept()

3) 解散警告

dismiss()

4) 发送文本到警告框

send_keys(data)

Selenium(API的基础)相关推荐

  1. Selenium自动化测试框架基础学习(元素表单操作)(Selenium操作)

    目录 一.Selenium自动化测试框架 1.1什么是框架? 1.2为什么使用框架? 1.3Selenium-webdriver工作原理 1.4selenium环境搭建(详情查阅讲义) 1.5什么是S ...

  2. python selenium api_Selenium2+python自动化-查看selenium API

    前面都是点点滴滴的介绍selenium的一些api使用方法,那么selenium的api到底有多少呢?本篇就叫大家如何去查看selenium api,不求人,无需伸手找人要,在自己电脑就有. pydo ...

  3. Android使用高德地图api实现基础定位

    Android使用高德地图api实现基础定位(一) 关于 会获取SHA1的可自行跳过这一步 第二步引用高德sdk 第三步修改MainActivity.java 关于 这篇主要讲如何使用高德sdk(不是 ...

  4. Golang淘宝开放平台Api请求基础SDK

    GO语言.淘宝Api.淘宝开放平台Api请求基础SDK dkeng/opentaobao-go​github.com 淘宝API sign算法dkeng/opentaobao-go淘宝API sign ...

  5. Pytorch ——基础指北_叁 [Pytorch API 构建基础模型]

    Pytorch --基础指北_叁 系列文章目录 Pytorch --基础指北_零 Pytorch --基础指北_壹 Pytorch --基础指北_贰 Pytorch --基础指北_叁 文章目录 Pyt ...

  6. Java EE API(基础包)

    2021-2022赛季 软191级队学习资料 J2EE编程之重点API(基础包) [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-xEgMG8Mr-16311861226 ...

  7. firefox应用自动全屏显示_【b】—自动化测试:基础selenium—API

    一.浏览器对象 # 导入webdriverfrom selenium import webdriver# 创建一个浏览器对象driver = webdriver.Firefox()# 设置全屏# dr ...

  8. Google Map API 的基础使用

    因为公司业务由国内市场到国际市场,有一些国际性业务的项目需要用到Google Map.项目完成后,把一些常用的方法写出来,供大家参考. 一.google地图基础显示 (1)引用google map j ...

  9. python模拟浏览器下载文件在哪里_python下selenium模拟浏览器基础操作

    1.安装及下载 selenium安装: pip install selenium  即可自动安装selenium geckodriver下载:https://github.com/mozilla/ge ...

最新文章

  1. 使用ffmpeg推流到Wowza
  2. tomcat,JVM内存设置
  3. 【计算机网络】网络层 : BGP 协议 ( BGP 协议简介 | BGP 协议信息交换 | BGP 协议报文格式 | BGP-4 常用报文 | RIP 、OSPF、BGP 协议对比 )
  4. 爬虫-ProxyHandler代理类-通过代理发起请求
  5. 201521123063 《Java程序设计》 第7周学习总结
  6. 在IIS上部署.net core的webapi项目 以及502.5错误的两种解决方法
  7. dnf服务器炸团门票怎么找回,DNF:打团掉线被献祭点这里免费补门票,再也不怕被献祭没牌了...
  8. 文件分割方式 模仿hadoop手写一个工作原理 模仿hadoop filesplit任意切片
  9. 最优传输论文(五十五):A DIRT-T approach to unsupervised domain adaptation
  10. 神秘美女接机刘谦 曝刘谦女友酷似舒淇身家过亿
  11. 糟糕,系统又被攻击了
  12. php bootstrap 轮播,让Bootstrap轮播插件carousel支持左右滑动手势的三种方法
  13. 基于elementui的大文件断点续传
  14. python面向对象之面向对象三要素
  15. 学习Python处理Excel 难度1级别 多表合并、数据透视表、拆分合并单元格并获得一维表
  16. c语言软件如何控制机器,硬件和软件是如何结合的?代码如何控制机器?
  17. linux php preg扩展,PHP_linux shell 正则表达式(BREs,EREs,PREs)差异比较,在计算机科学中,是指一个用 - phpStudy...
  18. QT随机放1个1和七个2_天热了鸡蛋容易坏,不用放进冰箱,老农教你1招,放2个月还新鲜...
  19. MySQL双机热备份实施方案
  20. 经典Ghost XP

热门文章

  1. python查找文件夹中的指定文件_python 递归搜索文件夹下的指定文件
  2. 指定DIV局部刷新的简单实现,很简单,但是网上搜到的大部分都很复杂
  3. Docker与k8s的恩怨情仇(二)—用最简单的技术实现“容器”
  4. js 如何快速找出找出两个数组中相同的部分
  5. 《达芬奇密码》与找移动硬盘
  6. wordpress mysql优化_wordpress优化mysql数据库的方法
  7. 可带癞子的通用麻将胡牌算法
  8. 苹果电动汽车热管理技术解析
  9. 月薪10k和40k的程序员差距有多大?
  10. 不管你信不信,反正我是信了 -- Delphi 版