zoukankan      html  css  js  c++  java
  • Selenium操作示例——鼠标悬停显示二级菜单,再点击二级菜单或下拉列表

    这两天在玩python中selenium,遇到一个问题,就是鼠标移动到页面中某按钮或菜单,自动弹出二级菜单或下拉菜单,再自动点击其中的二级菜单或下拉列表。

    首先,手工操作:打开母校的主页 http://www.uestc.edu.cn/,将鼠标移动到“学校概括”,自动弹出二级菜单,手工点击其中的“学校简介”,弹出学校的简介。

    如何在python中使用selenium自动实现?

    # encoding=utf-8
    from selenium import webdriver
    from selenium.webdriver.common.action_chains import ActionChains
     
    browser = webdriver.Chrome('E:\chromedriver.exe')
    browser.maximize_window()
    browser.get('http://www.uestc.edu.cn/')
    # 方法一:使用find_element_by_link_text找到顶级菜单,并将鼠标移动到上面
    article = browser.find_element_by_link_text(u'学校概况')
    ActionChains(browser).move_to_element(article).perform()
    # 方法二:使用find_element_by_xpath找到顶级菜单,并将鼠标移动到上面
    # article = browser.find_element_by_xpath('//a[contains(@href,"?ch/3")]')
    # ActionChains(browser).move_to_element(article).perform()
    # 方法一:使用find_element_by_link_text找到二级菜单,并点击
    # menu = browser.find_element_by_link_text(u'学校简介')
    # 方法二:使用find_element_by_xpath找到二级菜单,并点击
    menu = browser.find_element_by_xpath('//li[@classes="first odd nth1"]')
    menu.click()
     

    程序说明:

    1、本程序使用谷歌浏览器Chrome,需要下载与Chrome版本对应的驱动程序chromedriver.exe

    2、使用两种方法,找到顶级菜单,并通过move_to_element()和perform()两个函数实现鼠标悬停

    3、使用两种方法,找到二级菜单,并通过click()函数实现点击操作

  • 相关阅读:
    回归模型与房价预测
    朴素贝叶斯应用:垃圾邮件分类
    sklearn中的朴素贝叶斯模型及其应用
    朴素贝叶斯
    KMEAMS算法应用:图片压缩与贝叶斯公式理解
    第九周 课堂
    numpy数组及处理:效率对比
    完整的中英文词频统计
    杜-----------前期作业小笔记
    django_apscheduler 0.4.0删除了name字段
  • 原文地址:https://www.cnblogs.com/Raul2018/p/9274061.html
Copyright © 2011-2022 走看看