# 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. PC 商城扫描二维码登录

    需求分析: 扫码入口,在pc登录首页新增二维码登录入口 点击扫码入口显示二维码 二维码有效时间为一分钟 超时后显示二维码失效,点击刷新后生成新的二维码 在app端用户登录并扫码后,点击确认登录,进行跳 ...

  2. thinkjs 中增加过期时间

    使用thinkjs搭建的项目需要实现一小时后过期的功能:于是对比了新建项目与原有项目的不同之处:         官网中给的介绍:https://thinkjs.org/zh-cn/doc/2.2/a ...

  3. delphi调用存储过程

    一 . TAdoQuery对象下 1. mysql存储过程 sqls := Format(' call pro_addOneStudent (' + '''%s'',''%s'',''%s'',''% ...

  4. 合格PHP工程师的知识结构

    摘自http://www.cnblogs.com/ftx5410/p/7204672.html 一下子就想了这么多,后续想到了再补,请大家多多指教.其实编程使用什么语言不重要,最重要的是思想,编程的思 ...

  5. vue案例 - v-model实现自定义样式の多选与单选

    接,上文:https://www.cnblogs.com/padding1015/p/9265985.html 这两天在玩mpvue,但是下午如果对着文档大眼瞪小眼的话,肯定会睡着的. 想起昨晚的fl ...

  6. CSS改变插入光标颜色caret-color简介及其它变色方法(转)

    一.CSS改变输入框光标颜色的原生属性caret-color CSS caret-color属性可以改变输入框插入光标的颜色,同时又不改变输入框里面的内容的颜色. 例如: input { color: ...

  7. 部署OpenStack问题汇总(四)--openstack中nova-compute状态status显示为'XXX'的问题

    本博客已经添加"打赏"功能,"打赏"位置位于右边栏红色框中,感谢您赞助的咖啡. 第一次部署openstack的时候就遇见了这个问题,当时的版本是havana, ...

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

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

  9. 关于spring中的事件体系

    在客户这边上班,平时做开发的时候用到了一个客户自己写的一个开发框架,和spring类似,就是功能少一点,提供了依赖注入,事件体系,任务执行等常用的功能,还提供了一个桥接器,可以把spring中的bea ...

  10. NodeJS 实现基于 token 的认证应用

    此段摘自 http://zhuanlan.zhihu.com/FrontendMagazine/19920223 英文原文 http://code.tutsplus.com/tutorials/tok ...