zoukankan      html  css  js  c++  java
  • Python+Selenium学习--下拉框处理

    场景

    下拉框也是web 页面上非常常见的功能,webdriver 对于一般的下拉框处理起来也相当简单,要想定位下拉框中的内容,首先需要定位到下拉框;这样的二次定位

    下拉框一般有以下两种方式:

    • 鼠标移上去直接弹出的,那么我们可以使用move_to_element()进行操作,在上一章alert/confirm/prompt处理章节已经介绍
    • 下拉框处理是两次点击,第一点击弹出下拉框,第二次点击操作元素,下面将介绍这种

    代码

    #!/usr/bin/env python
    # -*- codinfg:utf-8 -*-
    '''
    @author: Jeff LEE
    @file: 下拉框处理.py
    @time: 2018-09-25 17:27
    @desc:
    '''
    from selenium import webdriver
    from selenium.webdriver.common.action_chains import ActionChains
    import time
    
    driver = webdriver.Firefox()
    #添加智能等待
    driver.implicitly_wait(10)
    
    driver.get('https://www.baidu.com/')
    
    #进入搜索设置页面
    elment = driver.find_element_by_link_text('设置')
    ActionChains(driver).move_to_element(elment).perform()
    driver.find_element_by_link_text('搜索设置').click()
    time.sleep(5)
    
    #先定位到下拉框
    driver.find_element_by_xpath("//select[@id='nr']").click()
    time.sleep(5)
    
    #再点击下拉框下的选项
    driver.find_element_by_xpath('//option[@value="20"]').click()
    time.sleep(5)
    
    #保存设置
    driver.find_element_by_link_text('保存设置').click()
    
    #获取网页上的警告信息
    alert=driver.switch_to_alert()
    time.sleep(5)
    
    #接收警告信息
    alert.accept()
    time.sleep(5)
    driver.quit()
    

      

  • 相关阅读:
    HDU2141 Can you find it?(搜索,二分)
    HDU1253 胜利大逃亡(搜索)
    辗转相除法证明
    POJ2230 Watchcow(欧拉回路)
    POJ2524Ubiquitous Religions, 1611The Suspects(并查集)
    POJ3259 Wormholes(最短路)
    HDU3018Ant Trip(欧拉回路)
    SDUT1500Message Flood(字典树)
    HDU1010 Tempter of the Bone(搜索,dfs)
    HDU1305Immediate Decodability(字典树)
  • 原文地址:https://www.cnblogs.com/uniquefu/p/9705418.html
Copyright © 2011-2022 走看看