# 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. Codeforces Round #363 (Div. 1) B. Fix a Tree 树的拆环

    题目链接:http://codeforces.com/problemset/problem/698/B题意:告诉你n个节点当前的父节点,修改最少的点的父节点使之变成一棵有根树.思路:拆环.题解:htt ...

  2. 基于WordNet的英文同义词、近义词相似度评估及代码实现

    源码地址:https://github.com/XBWer/WordSimilarity 1.确定要解决的问题及意义 在基于代码片段的分类过程中,由于程序员对数据变量名的选取可能具有一定的规范性,在某 ...

  3. 如何使用 Flexbox 和 CSS Grid,实现高效布局

    CSS 浮动属性一直是网站上排列元素的主要方法之一,但是当实现复杂布局时,这种方法不总是那么理想.幸运的是,在现代网页设计时代,使用 Flexbox 和 CSS Grid 来对齐元素,变得相对容易起来 ...

  4. oracle IMP-00085: 为无界导出文件指定了多个输入文件

    导入按表导出的数据的时候,提示为无界导出文件指定了多个输入文件 命令如下: imp user/user@database file=e:\test.dmp  提示信息: Import: Release ...

  5. spring boot 单元测试,如何使用profile

    一.问题概述 spring boot项目.单元测试的时候,我发现,总是会使用application.properties的内容,而该文件里,一般是我的开发时候的配置. 比如上图中,dev是开发配置,p ...

  6. ubuntu下文件压缩/解压缩

    ubuntu下文件压缩/解压缩 http://blog.csdn.net/luo86106/article/details/6946255 .gz 解压1:gunzip FileName.gz 解压2 ...

  7. Docker 容器管理:rancher

    Rancher:https://www.cnrancher.com/ 是一个开源的企业级全栈化容器部署及管理平台. 定位上和 K8s 比较接近,都是通过 web 界面赋予完全的 docker 服务编排 ...

  8. Docker logs 命令

    [root@docker01 ~]# docker logs --help Usage: docker logs [OPTIONS] CONTAINER Fetch the logs of a con ...

  9. Shell for

    for循环一般格式为:for 变量 in 列表do command1 command2 ... commandNdone列表是一组值(数字.字符串等)组成的序列,每个值通过空格分隔.每循环一次,就将列 ...

  10. [分布式系统学习]阅读笔记 Distributed systems for fun and profit 之一 基本概念

    因为工作的原因,最近打算看一些分布式学习的资料.其中这个http://book.mixu.net/distsys/就是一篇非常适合分布式入门的介绍. 这个短小的材料有下面5个小的章节,图文并茂,也没有 ...