今天搞定了excel上传,记录一下
一、需求
1. 在页面下在一个excel文件,格式为xlsx,包含两个sheet:数据字典,排班表
2. 编辑班表,将数据字典中的人员,写入sheet2中的对应单元格内
3. 导入班表
二、实现
- 下载
登录系统,然后在页面上点击下载按钮,会发送一个get请求,需要自己使用参数拼接请求的url,然后保存文件到本地
# 拼接下载地址
def get_schedule_table_url(self, data, signKey):
if data:
json_data = json.dumps(data)
else:
return
requestId = str(uuid4())
requestTime = time.strftime('%Y-%m-%d+%H:%M:%S', time.localtime())
version = "1.0"
before_sign_data = "%s%s%s%s" % (requestId, requestTime, version, json_data)
# 加签
sign_data = Aes_utils().hmacsha1(before_sign_data, signKey)
param = parse.quote(str(data))
h_url = "{0}/web-ss/pmp/schedule/table/template?".format(host)
url = h_url + "requestId=" + str(requestId) + "&requestTime=" + str(requestTime) + "&version=" + str(
version) + "&data=" + str(param) + "&sign=" + str(sign_data)
return url
# 下载排班表
def get_schedule_table_template(self, companyId, pc_token, pc_signKey, template_month, table_type="survey"