# coding=utf-8
"""
Created on 2017年7月31日 @author: candy
"""
from selenium import webdriver
from time import ctime,sleep
from selenium.common.exceptions import NoSuchElementException
import xlrd # 用户登录
"""
def login():
driver.get("http://10.10.1.9")
driver.find_element_by_id("username").send_keys("candy31")
driver.find_element_by_id("password").send_keys("1")
driver.find_element_by_id("loginbtn").click()
"""
#引入excel文档进行用户名的导入
def open_excel(file='file.xls'):
try:
data = xlrd.open_workbook(file)
return data
except( Exception, e):
print( str(e)) def excel_table_byindex(file='file.xls', colnameindex=0, by_index=0):
data = open_excel(file)
table = data.sheets()[by_index]
nrows = table.nrows # 行数
colnames = table.row_values(colnameindex) # 某一行数据
list = []
for rownum in range(1, nrows):
row = table.row_values(rownum)
if row:
app = {}
for i in range(len(colnames)):
app[colnames[i]] = row[i]
list.append(app)
return list def login():
driver.get("http://10.10.1.9/super/login/index.php")
driver.find_element_by_id('username').send_keys(listdata[i]['username'])
driver.find_element_by_id('password').send_keys("")
driver.find_element_by_id("loginbtn").click() # 考试答题
def exam():
# 进入考试
driver.get("http://10.10.1.9/super/pingnan/front/view.php?id=1669")
# 开始答题
driver.find_element_by_css_selector("#content_right > div:nth-child(2) > div > section > section > div.box.quizattempt > div.singlebutton.quizstartbuttondiv > form > div > input[type=\"submit\"]:nth-child(1)").click() # 第一题-判断题
driver.find_element_by_css_selector("#q1 > div.content > div > div.ablock > div.answer > div.r1 > label").click()
driver.find_element_by_name("next").click()
# 提交答案
#def submit():
# “提交所有答案并结束”
driver.find_element_by_css_selector("#content_right > div:nth-child(2) > div:nth-child(6) > div > div > form > div> input:nth-child(1)").click()
# 定位"提交答案"按钮
driver.find_element_by_css_selector("body>div>div>div>div>div>div>input:nth-child(1)").click() # 主函数
if __name__ == '__main__':
driver = webdriver.Chrome()
listdata = excel_table_byindex("E:\\data.xlsx",0)
if (len(listdata) <= 0 ):
assert 0, u"Excel数据异常" for i in range(0 , len(listdata) ):
login()
exam()
sleep(2)
#submit()
driver.find_element_by_class_name("userpicture").click()
sleep(2)
driver.find_element_by_class_name("user_show").find_element_by_link_text(u'退出').click() #Excel存入E盘根目录,data.xlsx内容如下截图:


【编码备份】1.9从Excel中导入用户名进行测试,用户一次进入系统进行答题测试。的更多相关文章

  1. 在Excel中导入文本文件(CSV/TXT),自定义隔离符号

    经常需要在Excel中导入文本文件,但是需要自定义隔离符号,例如空格或者逗号,参考一下方法:

  2. 从Excel中导入数据时,提示“未在本地计算机上注册“Microsoft.ACE.OLEDB.12.0”提供程序”的解决办法

    注意,64位系统,用64位的补丁文件; https://www.cnblogs.com/A2008A/articles/2438962.html 操作系统:使用的是64位的Windows Server ...

  3. postman上传excel,java后台读取excel生成到指定位置进行备份,并且把excel中的数据添加到数据库

    最近要做个前端网页上传excel,数据直接添加到数据库的功能..在此写个读取excel的demo. 首先新建springboot的web项目 导包,读取excel可以用poi也可以用jxl,这里本文用 ...

  4. hive 从Excel中导入数据

    拿到Excel表后将数据保留,其他的乱七八糟都删掉,然后另存为txt格式的文本,用nodepad++将文本转换为UTF-8编码,此处命名为cityprovince.txt 将cityprovince. ...

  5. Excel中导入到oracle使用merge into 差异性更新数据库

    merge into temp1 ausing (select ID         from (Select ID                 from temp1                ...

  6. c#.net Excel中的数据导入到SQL数据库中

    /// <summary>        /// 从Excel 导入学生        /// </summary>        /// <param name=&qu ...

  7. Java利用POI导入导出Excel中的数据

         首先谈一下今天发生的一件开心的事,本着一颗android的心我被分配到了PB组,身在曹营心在汉啊!好吧,今天要记录和分享的是Java利用POI导入导出Excel中的数据.下面POI包的下载地 ...

  8. 关于Excel中的需求或者是用例导入到QC中遇到的问题

    Excel 中导入用例到QC时,会提示如图所示的错误信息:   解决方案: 我的电脑-->属性->高级-->性能设置-->添加QC程序 

  9. Vue项目中导入excel文件读取成js数组

    1. 安装组件 cnpm install xlsx --save 2. 代码 <template> <span> <input class="input-fil ...

随机推荐

  1. mybatis 之 resultType="Map" parameterType="String"

    <select id="getAllGoodsForSouJiaYi" resultType="Map" parameterType="Stri ...

  2. WINDOWS消息和窗口简介

    一.WINDOWS的消息和窗口简介:1.什么是windows在这里我就不介绍了,但是作为一个程序员我们要知道WINDOWS最重要的一个也是我们程序员常用的一个东西就是消息.窗口是以消息的形式输入的,窗 ...

  3. 使用dom4j解析xml为json对象

    import java.util.List; import org.dom4j.Document; import org.dom4j.DocumentHelper; import org.dom4j. ...

  4. Linux学习(二)

    Linux进程管理 每个 Linux 命令都与系统中的程序对应,输入命令,Linux 就会创建一个新的进程.例如使用 ls 命令遍历目录中的文件时,就创建了一个进程.简而言之,进程就是程序的实例. 创 ...

  5. 【EF框架】另一个 SqlParameterCollection 中已包含 SqlParameter。

    查询报表的时候需要通过两次查询取出数据. 第一次,用count(*)查出总数: 第二次,用rownumber分页取出想要的页内容: 为了防止sql注入,使用SqlParameter来传递参数 var ...

  6. 【python3】 django2.0 加载css 、js 、img 等静态文件

    python : 3.6.4 django : 2.0 1 文件目录  /var/www/mysite 2 nginx配置: server { listen ; #暴露给外部访问的端口 server_ ...

  7. jQuery("dom").get()的源码分析

    该方法是绑定在jQuery.prototype上的一个静态方法,目的是取出jQuery对象中的某个或全部DOM元素. 使用方法: $("someDOM").get(index); ...

  8. LeetCode 46 Permutations(全排列问题)

    题目链接:https://leetcode.com/problems/permutations/?tab=Description   Problem:给出一个数组(数组中的元素均不相同),求出这个数组 ...

  9. LeetCode 36 Valid Sudoku(合法的数独)

    题目链接: https://leetcode.com/problems/valid-sudoku/?tab=Description   给出一个二维数组,数组大小为数独的大小,即9*9  其中,未填入 ...

  10. 用CornerStone配置SVN,HTTP及svn简单使用说明

    转载 http://my.oschina.net/joanfen/blog/194491 一.下载地址 CornerStoneV2.6:http://pan.baidu.com/s/1qWEsEbM密 ...