django接收前端excel文件,读取内容

@csrf_exempt
@require_http_methods(['POST'])
def import_port(request):
    """
    @param request:
    @return:
    """
    try:
        file_obj = request.FILES.get("file")
        result = import_port(file_obj)
        return HttpResponse(json.dumps(result, ensure_ascii=False))
    except Exception:
        logger.error(traceback.format_exc())
        return HttpResponse(json.dumps({"code": 500, "msg": "导入错误"}, ensure_ascii=False))




def import_port(file_obj):
    """
    @param file_obj: 文件对象
    @return:
    """
    # 读取文件,写入数据库
    rb = xlrd.open_workbook(filename=None, file_contents=file_obj.read())
    # rb = xlrd.open_workbook(filename=path) 根据路径读取
    sheet1 = rb.sheet_by_index(0)
    print(sheet1.name, sheet1.ncols, sheet1.nrows)

    # 总行数
    nrows = sheet1.nrows

    now_time = int(time.time())
    for i in range(1, nrows):
        rows = sheet1.row_values(i)
        geo, dev_ip, public_ip, port = rows
        # 读取到内容后,自己的逻辑操作

    return {'code': 200, 'data': {}, 'msg': '导入成功'}

你可能感兴趣的:(django,前端,excel)