• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • vbs
  • DOS/BAT
  • hta/htc
  • python
  • perl
  • VBA
  • ColdFusion
  • ruby
  • PowerShell
  • Lua
  • Golang
  • linux shell
您的位置:首页 > 脚本语言 >python > python Django批量导入不重复数据

python Django批量导入不重复数据

作者: 字体:[增加 减小] 来源:互联网

通过本文主要向大家介绍了python.django,python安装django,python django教程,python django下载,python django框架等相关知识,希望对您有所帮助,也希望大家支持linkedu.com www.linkedu.com

本文为大家分享了python Django批量导入不重复数据的实现代码,供大家参考,具体内容如下

程序如下:

#coding:utf-8 

import os 
os.environ.setdefault("DJANGO_SETTINGS_MODULE", "www.settings") 

'''
Django 版本大于等于1.7的时候,需要加上下面两句
import django
django.setup()
否则会抛出错误 django.core.exceptions.AppRegistryNotReady: Models aren't loaded yet.
'''
import django
import datetime


if django.VERSION >= (1, 7):#自动判断版本
 django.setup()

from keywork.models import DevData 

f = open('cs.csv')
WorkList = []
next(f) #将文件标记移到下一行
x = y = 0
for line in f:
 parts = line.replace('"','') #将字典中的"替换空
 parts = parts.split(',') #按;对字符串进行切片
 if DevData.objects.filter(serv_id = parts[0],day_id=parts[24]).exists():
  x = x + 1
 else:
  y = y + 1
  WorkList.append(DevData(serv_id=parts[0], serv_state_name=parts[1], acc_nbr=parts[2], user_name=parts[3], acct_code=parts[4], product_id=parts[5],
       mkt_chnl_name=parts[6], mkt_chnl_id=parts[7],mkt_region_name=parts[8], mkt_region_id=parts[9],mkt_grid_name=parts[10],
       sale_man=parts[11],sale_outlets_cd1_name=parts[12], completed_time=parts[13],remove_data=parts[14], user_flag=parts[15],
       pro_flag=parts[16], service_offer_id=parts[17],service_offer_name=parts[18], finish_time=parts[19],staff_name=parts[20],
       staff_code=parts[21],org_name=parts[22],prod_offer_name=parts[23],day_id=parts[24]
       ))
f.close() 
DevData.objects.bulk_create(WorkList)
print "重复数据"+str(x)+"条,成功导入数据"+str(y)+"条"
</div>

本文主要运用模型中exists()判断导入数据和数据库是否重复,如果不重复就用bulk_create批量导入数据库!

可对照参考我的另一篇文章:批量导入数据

以上就是本文的全部内容,希望对大家的学习有所帮助。

</div>

您可能想查找下面的文章:

  • Django的信号机制详解
  • Python之Web框架Django项目搭建全过程
  • Django的信号机制详解
  • Python之Web框架Django项目搭建全过程
  • Django自定义插件实现网站登录验证码功能
  • Python中Django发送带图片和附件的邮件
  • Django应用程序中如何发送电子邮件详解
  • python+django快速实现文件上传
  • Python采用Django开发自己的博客系统
  • Python+django实现简单的文件上传

相关文章

  • Python利用IPython提高开发效率
  • Python深入学习之闭包
  • 开源Web应用框架Django图文教程
  • Python简单计算文件夹大小的方法
  • 详解python的数字类型变量与其方法
  • Python程序语言快速上手教程
  • 简介二分查找算法与相关的Python实现示例
  • Python的Bottle框架中实现最基本的get和post的方法的教程
  • Python操作Access数据库基本步骤分析
  • python实现的登录和操作开心网脚本分享

文章分类

  • vbs
  • DOS/BAT
  • hta/htc
  • python
  • perl
  • VBA
  • ColdFusion
  • ruby
  • PowerShell
  • Lua
  • Golang
  • linux shell

最近更新的内容

    • python元组操作实例解析
    • 教你安装python Django(图文)
    • python基础入门详解(文件输入/输出 内建类型 字典操作使用方法)
    • 详解python并发获取snmp信息及性能测试
    • python文件与目录操作实例详解
    • python Django连接MySQL数据库做增删改查
    • Python threading多线程编程实例
    • python执行子进程实现进程间通信的方法
    • Python统计列表中的重复项出现的次数的方法
    • python通过装饰器检查函数参数数据类型的方法

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有