python Django批量导入不重复数据


Posted in Python onMarch 25, 2016

本文为大家分享了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)+"条"

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

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

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

Python 相关文章推荐
python中list循环语句用法实例
Nov 10 Python
Python实现字符串格式化的方法小结
Feb 20 Python
Python嵌套列表转一维的方法(压平嵌套列表)
Jul 03 Python
实例讲解Python脚本成为Windows中运行的exe文件
Jan 24 Python
python3中关于excel追加写入格式被覆盖问题(实例代码)
Jan 10 Python
Python生成词云的实现代码
Jan 14 Python
TensorFlow命名空间和TensorBoard图节点实例
Jan 23 Python
有关Tensorflow梯度下降常用的优化方法分享
Feb 04 Python
tensorboard 可以显示graph,却不能显示scalar的解决方式
Feb 15 Python
python语言实现贪吃蛇游戏
Nov 13 Python
Pycharm安装第三方库失败解决方案
Nov 17 Python
Python实现双向链表基本操作
May 25 Python
用Python实现斐波那契(Fibonacci)函数
Mar 25 #Python
Python基础教程之正则表达式基本语法以及re模块
Mar 25 #Python
详解Python使用simplejson模块解析JSON的方法
Mar 24 #Python
解决Python出现_warn_unsafe_extraction问题的方法
Mar 24 #Python
python 回调函数和回调方法的实现分析
Mar 23 #Python
python 时间戳与格式化时间的转化实现代码
Mar 23 #Python
python各种语言间时间的转化实现代码
Mar 23 #Python
You might like
gearman管理工具GearmanManager的安装与php使用方法示例
2020/02/27 PHP
PHP文件操作简单介绍及函数汇总
2020/12/11 PHP
js 控制图片大小核心讲解
2013/10/09 Javascript
window.location的重写及判断location是否被重写
2014/09/04 Javascript
JavaScript中的toUTCString()方法使用详解
2015/06/12 Javascript
jquery合并表格中相同文本的相邻单元格
2015/07/17 Javascript
JavaScript实现向右伸出的多级网页菜单效果
2015/08/25 Javascript
Node.js开发者必须了解的4个JS要点
2016/02/21 Javascript
Bootstrap Chart组件使用教程
2016/04/28 Javascript
JavaScript求一个数组中重复出现次数最多的元素及其下标位置示例
2018/07/23 Javascript
vue.js实现带日期星期的数字时钟功能示例
2018/08/28 Javascript
js实现前面自动补全位数的方法
2018/10/10 Javascript
layer 刷新某个页面的实现方法
2019/09/05 Javascript
JS数组splice操作实例分析
2019/10/12 Javascript
[01:51]开启你的城市传奇 完美世界城市挑战赛开始报名
2018/10/09 DOTA
python基础教程之popen函数操作其它程序的输入和输出示例
2014/02/10 Python
Python实现购物程序思路及代码
2017/07/24 Python
Python实现的双色球生成功能示例
2017/12/18 Python
python让列表倒序输出的实例
2018/06/25 Python
对TensorFlow的assign赋值用法详解
2018/07/30 Python
对python 操作solr索引数据的实例详解
2018/12/07 Python
python中while和for的区别总结
2019/06/28 Python
python实现交并比IOU教程
2020/04/16 Python
Python几种常见算法汇总
2020/06/02 Python
html5中去掉input type date默认样式的方法
2018/09/06 HTML / CSS
印度领先的在线时尚商店:Koovs
2016/08/28 全球购物
YesBabyOnline美国:全球性的在线婚纱礼服工厂
2018/05/05 全球购物
护理专业毕业生自我鉴定
2013/10/08 职场文书
个人简历自荐信
2013/12/05 职场文书
创新比赛获奖感言
2014/02/13 职场文书
教堂婚礼主持词
2014/03/14 职场文书
对孩子的寄语
2014/04/09 职场文书
教育专业毕业生推荐信
2014/07/10 职场文书
2014年最新大专生职业生涯规划书范文
2014/09/13 职场文书
2016中秋晚会开幕词
2016/03/03 职场文书
Python中os模块的简单使用及重命名操作
2021/04/17 Python