• Python中元素定位探讨


    以下以阿里云(10.10.1.11)系统中考试答题为例进行了python脚本的编写研究。
    模糊定位(定位一些动态值):

    ——————————————————————————————————————————————————————————————————————————————————
    #coding=utf-8
    from selenium import webdriver
    #引入ActionChains类
    from selenium.webdriver.common.action_chains import ActionChains
    from selenium.webdriver.support.ui import Select
    driver = webdriver.Firefox()
    driver.get("http://10.10.1.11")

    #登录系统
    driver.find_element_by_id("username").send_keys("d100")
    driver.find_element_by_id("password").send_keys("123456")
    driver.find_element_by_id("loginbtn").click()

    #进入考试
    driver.find_element_by_class_name("myquizlist_box_btn").click()#定位“开始考试”按钮,开始进入答题阶段
    #***********************************--1--********************************|简答题(往指定域中发送内容)
    driver.find_element_by_class_name("editor_atto_content").send_keys("123456")
    driver.find_element_by_name("next").click()
    #***********************************--2--********************************|匹配题(下拉框中值的选择)
    Select(driver.find_element_by_id("menuq6251:2_sub0")).select_by_value("2")
    Select(driver.find_element_by_id("menuq6251:2_sub1")).select_by_value("3")
    Select(driver.find_element_by_id("menuq6251:2_sub2")).select_by_value("1")
    driver.find_element_by_name("next").click()
    #***********************************--3--********************************|匹配题
    Select(driver.find_element_by_id("menuq6251:3_sub0")).select_by_value("2")
    Select(driver.find_element_by_id("menuq6251:3_sub1")).select_by_value("3")
    Select(driver.find_element_by_id("menuq6251:3_sub2")).select_by_value("1")
    driver.find_element_by_name("next").click()
    #***********************************--4--********************************|单选题(简单勾选提交)
    driver.find_element_by_id("q6251:4_answer0").click()
    driver.find_element_by_name("next").click()
    #***********************************--56--*******************************|多选题(同单选题)
    driver.find_element_by_id("quiznavbutton56").click()
    driver.find_element_by_id("q6251:56_choice1").click()
    driver.find_element_by_id("q6251:56_choice2").click()
    driver.find_element_by_name("next").click()
    # #***********************************--60--********************************|判断(同单选题)
    driver.find_element_by_id("quiznavbutton60").click()
    driver.find_element_by_id("q6251:60_answertrue").click()
    driver.find_element_by_name("next").click()
    #***********************************--提交试卷--********************************|按钮(网页及弹出窗口中按钮的定位)
    driver.find_element_by_xpath("//input[@type='submit' and @value='提交所有答案并结束']").click()#网页中点击提交按钮
    driver.find_element_by_xpath("//input[@type='button' and @value='提交所有答案并结束']").click()#弹出窗口中点击提交按钮
    #***********************************--退出系统--********************************

    #driver.quit()
  • 相关阅读:
    任何抛开业务谈大数据量的sql优化都是瞎扯
    关于优化for循环的注意的事项
    sql调优《二》
    页面加载通过javascript来修改控件属性
    。net内存优化
    oracle调优使用到相关sql
    oracle插入或更新某一个指定列来执行触发器
    webpack4基础入门操作(二)(讲解下webpack的配置内容)
    webpack4基础入门操作(一)
    关于一个WCF调用的服务端和客户端的配置信息集合
  • 原文地址:https://www.cnblogs.com/zhuzhubaoya/p/5913659.html
Copyright © 2020-2023  润新知