用python+selenium导入excel文件
连接mysql
#encoding=utf-8 import pymysql
import time class ConnMysql(object):
def __init__(self):
self.conn = pymysql.connect(host='192.168.2.53',user='tester',passwd='tester890__',db='ips_sqrz',charset='utf8')
self.cur = self.conn.cursor() def selectSql(self):
selectSql = ("SELECT secondprojectno FROM ips_smallproject_info") #��ѯ��ݿ����
self.cur.execute(selectSql)
self.results = self.cur.fetchall() def getTime(self):
self.temp = int(time.strftime('%Y%m%d%H%M%S',time.localtime(time.time()))) def closeSql(self):
self.cur.close()
self.conn.close()
修改excel
#!/usr/bin/env python
#-*- coding:gbk -*-
import sys
reload(sys)
sys.setdefaultencoding('gbk') import xlrd
from xlrd import open_workbook
from xlutils.copy import copy
from ConnMysql import ConnMysql class OpExcel(object):
def __init__(self):
file = xlrd.open_workbook("E:\WorkSpace\python34Demo\data\\运单导入模板.xlsx")
sheet = file.sheet_by_index(0)
self.sheets = copy(file)
self.table = self.sheets.get_sheet(0) self.conn = ConnMysql()
self.conn.selectSql() def rExcel(self):
print "生成运单模板中,请稍等。。。"
row = 1
col = 0
for each in self.conn.results:
if row == 10:
pass
else:
self.conn.getTime()
self.table.write(row, col, each)
self.table.write(row, col+1, self.conn.temp+row)
self.sheets.save("E:\WorkSpace\python34Demo\data\\运单导入模板.xlsx")
row += 1
self.conn.closeSql()
实现导入
#!/usr/bin/env python
#-*- coding:gbk -*-
import sys
reload(sys)
sys.setdefaultencoding('gbk') from selenium import webdriver
import time,sys
from OpExcel import OpExcel class ImportOrder(object):
def __init__(self):
driver = webdriver.Firefox()
driver.get("http://sqrz55.ips.cn")
driver.maximize_window() time.sleep()
driver.find_element_by_id("username").send_keys("sqrz_admin")
driver.find_element_by_id("password").send_keys("admin123")
driver.find_element_by_class_name("login_btn").click() time.sleep(2)
if driver.title == u'首页 - G7':
print '登陆成功'
driver.get("http://sqrz55.ips.cn/ordercenter/import.html") time.sleep(1) #直接为导入控件赋文件的绝对路径
driver.find_element_by_xpath('//*[@id="importfile"]').\
send_keys(u"E:\WorkSpace\python34Demo\data\\运单导入模板.xlsx")
driver.find_element_by_id("btnsubmit").click()
time.sleep(2)
driver.find_element_by_class_name("ui_state_highlight").click() succeed = driver.find_element_by_xpath("//span[@id='success_count']").text #得到成功导入和失败导入的数目
error = driver.find_element_by_xpath("//span[@id='error_count']").text
if succeed >= 0:
print '成功导入'+succeed+'条数据'
print '失败'+error+'条数据'
else:
print '登陆失败,请重新登陆' driver.close() if __name__ == '__main__':
ex = OpExcel()
ex.rExcel()
io = ImportOrder()
用python+selenium导入excel文件的更多相关文章
- python批量处理excel文件数据
https://www.zhihu.com/question/39299070?sort=created 作者:水中柳影链接:https://www.zhihu.com/question/392990 ...
- .Net MVC 导入导出Excel总结(三种导出Excel方法,一种导入Excel方法) 通过MVC控制器导出导入Excel文件(可用于java SSH架构)
.Net MVC 导入导出Excel总结(三种导出Excel方法,一种导入Excel方法) [原文地址] 通过MVC控制器导出导入Excel文件(可用于java SSH架构) public cl ...
- Java POI导入Excel文件
今天在公司需要做个导入Excel文件的功能,所以研究了一下,参考网上的一些资料总算是做出来了,在此记录一下防止以后忘记怎么弄. 本人用的是poi3.8,所以需要的JAR包如下: poi-3.8.jar ...
- phpexcel导入excel文件报the filename xxx is not recognised as an OLE file错误。
工作中频繁会用phpexcel类导入excel文件的数据到数据库,目前常用的excel文件格式有:xls.csv.xlsx. 刚开始,针对xls文件,使用如下程序,能正常运行: $objReader ...
- python下读取excel文件
项目中要用到这个,所以记录一下. python下读取excel文件方法多种,用的是普通的xlrd插件,因为它各种版本的excel文件都可读. 首先在https://pypi.python.org/py ...
- YII使用PHPExcel导入Excel文件的方法
1.下载phpexcel,将压缩包中的classes复制到protected/extensions下并修改为PHPExcel. 2.修改YII配置文件config/main.php 'import'= ...
- springMVC(5)---导入excel文件数据到数据库
springMVC(5)---导入excel文件数据到数据库 上一篇文章写了从数据库导出数据到excel文件,这篇文章悄悄相反,写的是导入excel文件数据到数据库.上一篇链接:springMVC(4 ...
- excel数据 入库mysql 和 mysql数据 导入excel文件
1.excel数据入库mysql 首先准备excel文件, 标红的地方需要留意,一个是字段名所在行,一个表名对应页: 然后私用mysql工具 navicat, 选择数据库,然后导入文件, 选中相应ex ...
- java后端导入excel模板和导入excel文件去读数据
模板转载地址:https://www.cnblogs.com/zhangyangtao/p/9802948.html 直接上代码(我是基于ssm写的demo,导入文件目前只能读取.xls后缀的exce ...
随机推荐
- 从电商秒杀与抢购谈Web系统大规模并发
从电商秒杀与抢购谈Web系统大规模并发 http://www.iamlintao.com/4242.html 一.大规模并发带来的挑战 在过去的工作中,我曾经面对过5w每秒的高并发秒杀功能,在这个过程 ...
- Reorder List [leetcode] 这两种思路
第一个想法随着vector保存全部Node* 表拼接出来 void reorderList(ListNode *head) { vector<ListNode*> content; Lis ...
- HTML高级标签(2)————窗体分帧(1)————分帧演示
我们能够简单的编写一个多帧的窗体,而且能够随意的划分窗体区域. <frameset rows="*,*,*"> <frameset cols="*,*& ...
- JAVA基金会 (三)反射 反思的深度分析
上一页已经推出反映的一些基本概念,这主要是通过一个例子反映谈的过程,以及样品的实际应用. 这个样例是这种设计思路:从一个属性文件里读取一段字符串,然后,依据该字符串生成相应的类实例对象:这之后另一个增 ...
- T-SQL技术收集——删除重复数据
原文:T-SQL技术收集--删除重复数据 在工作和面试中,经常出现如何查询或者删除重复数据的问题,如果有主键,那还好办一点,如果没有主键,那就有点麻烦. 当一个表上没有辅助键时,如果使用SSMS界面来 ...
- OCEANIAERP对接-code盘点机并存储实时库存计划和方案的使用,实时库存,云清查方案
1. PDA手持设备按键说明 [Tab]键:使输入焦点在控件上切换. [ESC]键:弹出是否退出确认对话框,退出操作界面或程序. [OK]键:确认输入或选择,进入下一步操作. [C]键:删除键 ...
- 【J2SE】java实现简单照片查看器
程序执行结果: project结构图: 程序代码: import java.awt.BorderLayout; import java.awt.FileDialog; import java.awt. ...
- UVA714- Copying Books(最大最小化)
意甲冠军:k手稿的部分成m部分,使每一个和最小 思路:典型最大值最小化问题,使用贪心+二分. 贪心的是每次尽量将元素往右边划分,二分查找最小的x满足m个连续的子序列和S(i)都不超过x. 由于输出的原 ...
- javascript小白学习指南0---1
引言: 做为一名程序猿.都是真心的想把自己的东西分享出来,供大家一起学习探讨.一起提高技能.一起涨工资,呵 这一系列的文章都是关于Javascript 基础的 当然文章其中穿插了些我自己的理解.希 ...
- SQL 注意事项
-------选择表名 配置Ctrl+3 能够select * 桌 USE [NB] GO /* 物: StoredProcedure [dbo].[SP_Select] 脚本日期: 05/28/20 ...