zoukankan      html  css  js  c++  java
  • 鼠标点击键盘Keys 及Select类

    from selenium.webdriver.common.action_chains import ActionChains
    import time
    from selenium import webdriver
    from selenium.webdriver.support.wait import WebDriverWait
    from selenium.webdriver.support import expected_conditions as EC   #期望条件
    from selenium.webdriver.common.by import By   #八种定位方式
    from selenium.webdriver.common.keys import Keys #键盘
    from selenium.webdriver.support.ui import Select
    #处理下拉选择 #创建浏览器驱动
    driver = webdriver.Chrome(service_log_path='E:chrome.log')
    # driver.implicitly_wait(30)
    #
    访问一个网站 driver.get('http://www.baidu.com') driver.maximize_window()

    #设置窗口最大化 ele = driver.find_element_by_id("s-usersetting-top")

    #获取要点击的‘设置’元素 ''' 方法一,这里可以直接click 方法二,鼠标点击方法 '''

    # driver.find_element_by_id("s-usersetting-top").click()
    #方法一
    ActionChains(driver).move_to_element(ele).perform()

    #方法二 #点击设置元素后等待弹出框里的元素显示
    WebDriverWait(driver,10,1).until(EC.visibility_of_element_located((By.XPATH,'//div[@class="s-user-setting-pfmenu"]//a[text()="高级搜索"]')))

    #---------------------切换window---------------------
    handles = driver.window_handles print("第一个",handles)

    #执行 driver.find_element_by_xpath('//div[@class="s-user-setting-pfmenu"]//a[text()="高级搜索"]').click()

    #等待新的弹窗出来
    WebDriverWait(driver,6).until(EC.visibility_of_element_located((By.XPATH,'//div[@class="c-select-selection"]')))
    driver.find_element_by_xpath(
    '//span[@id="adv-setting-ft"]//div[@class="c-select-selection"]').click() time.sleep(2)
    driver.find_element_by_xpath(
    '//p[text()="微软 Powerpoint (.ppt)"]').click()

    ''' 第二种方法是,如果遇到的是Select标签,用下面的方法 '''

    # datas = driver.find_element_by_xpath('select和options路径')
    #

    #把所有的元素都放置到select类种

    #

    # s = Select(datas)

    #

    #可以通过下标或者value或者text三种方式确认

    #

    # s.select_by_visible_text("所有格式")

    #

    # s.select_by_index()

    #

    # s.select_by_value()
  • 相关阅读:
    学生排序,使用三层优先级
    利用类计算学生成绩和排序
    join()函数
    对象
    015_eclipse开发环境的使用
    013_运算符_算术
    012_变量
    011_jdk7新特性
    010_类型提升问题
    008_浮点数误差问题
  • 原文地址:https://www.cnblogs.com/TKOPython/p/13555900.html
Copyright © 2011-2022 走看看