selenium基础(下拉菜单操作)

select/option元素:

1.触发下拉列表出现

2.等待下拉列表中的元素出现,然后进行选择元素即可。

select/option元素:

下拉框操作-Select类
selenium提供Select类来处理select/option

1.引入

from selenium.webdriver.support.ui import Select

2.创建Select对象,传入元素

ele = driver.find_element_by_xpath(元素定位表达式)
s = Select(ele)

3.选择下拉列表值:

s.select_by_value(value值) #通过value
s.select_by_index(index) #通过下标
s.select_by_visible_text(文本') #通过文本

例:百度设置-高级搜索-下拉框

from selenium import webdriver
from selenium.webdriver.support.ui import Select#select类,下拉菜单使用
from selenium.webdriver.support.wait import WebDriverWait#等待时间包,在限定时间内查找元素
from selenium.webdriver.common.action_chains import ActionChains#鼠标操作包
from selenium.webdriver.common.keys import Keys#键盘操作包
import time#时间包
import unittest#单元测试包 driver=webdriver.Firefox()
driver.get('https://www.baidu.com')
above=driver.find_element_by_link_text('设置')#找到“设置”按钮
ActionChains(driver).move_to_element(above).perform()#将鼠标放置到“设置”按钮上
WebDriverWait(driver,10).until(lambda a:a.find_element_by_link_text('高级搜索'))#10秒钟之内找到元素
driver.find_element_by_link_text('高级搜索').click()
time.sleep(3)
#找到下拉框并找到要选择的元素
Select(driver.find_element_by_name('ft')).select_by_value('pdf')#通过value进行定位
time.sleep(3)
ele=driver.find_element_by_name('ft')
s=Select(ele)
s.select_by_index(6)#通过下标进行定位
time.sleep(3)
s.select_by_visible_text('微软 Word (.doc)')#通过文本内容进行查找
time.sleep(2)
driver.quit()

selenium基础(下拉菜单操作)的更多相关文章

  1. selenium,unittest——下拉菜单操作,百度账号设置修改

    #encoding=utf-8from selenium import webdriverimport time,unittest, re,sysfrom HTMLTestRunner import ...

  2. selenium.common.exceptions.ElementNotVisibleException: Message: element not visible处理方法:selenium针对下拉菜单事件的处理

    使用Selenium爬虫时,可能会遇到一些下拉菜单,动态加载,如果直接使用find_element_by_函数会报错,显示selenium.common.exceptions.ElementNotVi ...

  3. selenium定位下拉菜单好文

    http://www.cnblogs.com/nbkhic/archive/2011/10/23/2221726.html 定位下拉菜单

  4. [Selenium] 针对下拉菜单出现之后又立马消失的问题,通过Javascript改变元素的可见属性

    public void clickDateDropDownButton() { SeleniumUtil.jsClick(driver, page.getDateDropdownButtonOfInv ...

  5. html基础 下拉菜单和文本域的基本操作

    结构代码 所在城市: <select > <option selected>北京</option> <option>上海</option> ...

  6. 『心善渊』Selenium3.0基础 — 13、Selenium操作下拉菜单

    目录 1.使用Selenium中的Select类来处理下拉菜单(推荐) 2.下拉菜单对象的其他操作(了解) 3.通过元素二次定位方式操作下拉菜单(重点) (1)了解元素二次定位 (2)示例: 页面中的 ...

  7. Selenium下拉菜单(Select)的操作-----Selenium快速入门(五)

    对于一般元素的操作,我们只要掌握本系列的第二,三章即可大致足够.对于下拉菜单(Select)的操作,Selenium有专门的类Select进行处理.文档地址为:http://seleniumhq.gi ...

  8. selenium webdriver从安装到使用(python语言),显示等待和隐性等待用法,切换窗口或者frame,弹框处理,下拉菜单处理,模拟鼠标键盘操作等

    selenium的用法 selenium2.0主要包含selenium IDE 和selenium webDriver,IDE有点类似QTP和LoadRunner的录制功能,就是firefox浏览器的 ...

  9. Python+Selenium笔记(八):操作下拉菜单

    (一) Select类 Select类是selenium的一个特定的类,用来与下拉菜单和列表交互. 下拉菜单和列表是通过HTML的<select> 元素实现的.选择项是通过<sele ...

随机推荐

  1. FTP 连接模式 (主动模式被动模式)

    FTP是有两种传输的模式的,主动模式和被动模式,一个完整的FTP文件传输需要建立两种类型的连接,一种为文件传输下命令,称为控制连接,另一种实现真正的文件传输,称为数据连接. 1. 控制连接客户端希望与 ...

  2. jQuery-介绍 加载 选择器 样式操作 属性操作 绑定click事件

    jQuery - 介绍 加载 选择器 样式操作 属性操作 绑定click事件 注意:以下部分问题不能实现效果,因该是单词拼写错误(少个t)或者没有加引号(“swing”)... jquery介绍 jQ ...

  3. JavaScript学习笔记之CSS-DOM

    HTML负责结构层,网页的结构层由HTML或者XHTML之类的标记语言负责构建 CSS负责表示层,描述页面内容应该如何呈现. JavaScript负责行为层,负责内容应该如何响应事件这一问题. 能利用 ...

  4. NX二次开发-UFUN移动工程图视图到另一个图纸页UF_DRAW_move_view_to_drawing

    #include <uf.h> #include <uf_draw.h> #include <uf_obj.h> UF_initialize(); //找名字获取视 ...

  5. NX二次开发-UFUN特征找xxx UF_MODL_ask_feat_xxx等函数(待补充)

    NX9+VS2012 #include <uf.h> #include <uf_modl.h> #include <uf_obj.h> #include <u ...

  6. C/Python/Java环境变量配置

    链接 全图预览: Java: 只需添加下面三个环境变量即可使用Java.对照这我的添加就行. CLASSPATH的内容: .;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\li ...

  7. python入门 类的继承和聚合(五)

    继承 class Rocket: def __init__(self, name, distance): self.name = name self.distance = distance def l ...

  8. window location跳转

    "top.location.href"是最外层的页面跳转"window.location.href"."location.href"是本页面 ...

  9. LOJ #113. 最大异或和 (线性基)

    题目链接:#113. 最大异或和 题目描述 这是一道模板题. 给由 \(n\) 个数组成的一个可重集 \(S\),每次给定一个数 \(k\),求一个集合 \(T \subseteq S\),使得集合 ...

  10. day 88 DjangoRestFramework学习二之序列化组件、视图组件

    DjangoRestFramework学习二之序列化组件.视图组件   本节目录 一 序列化组件 二 视图组件 三 xxx 四 xxx 五 xxx 六 xxx 七 xxx 八 xxx 一 序列化组件 ...