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实现树莓派WiFi断线自动重连的实例代码
Mar 16 Python
浅谈pytorch和Numpy的区别以及相互转换方法
Jul 26 Python
教你利用Python玩转histogram直方图的五种方法
Jul 30 Python
Python WSGI的深入理解
Aug 01 Python
python读取txt文件,去掉空格计算每行长度的方法
Dec 20 Python
python os模块简单应用示例
May 23 Python
python实现控制电脑鼠标和键盘,登录QQ的方法示例
Jul 06 Python
Python代码注释规范代码实例解析
Aug 14 Python
python爬取”顶点小说网“《纯阳剑尊》的示例代码
Oct 16 Python
python3 使用ssh隧道连接mysql的操作
Dec 05 Python
python推导式的使用方法实例
Feb 28 Python
python 实现定时任务的四种方式
Apr 01 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
一个简洁的多级别论坛
2006/10/09 PHP
在PHP中养成7个面向对象的好习惯
2010/01/28 PHP
PHP内核探索之变量
2015/12/22 PHP
php简单随机字符串生成方法示例
2017/04/19 PHP
PDO实现学生管理系统
2020/03/21 PHP
用Javascript做flash做的事..才完成的一个类.Auntion Action var 0.1
2007/02/23 Javascript
js怎么判断flash swf文件是否加载完毕
2014/08/14 Javascript
解决js图片加载时出现404的问题
2020/11/30 Javascript
安装使用Mongoose配合Node.js操作MongoDB的基础教程
2016/03/01 Javascript
JavaScript中的Array 对象(数组对象)
2016/06/02 Javascript
浅谈jQuery中的$.extend方法来扩展JSON对象
2017/02/12 Javascript
swiper移动端轮播插件(触碰图片之后停止轮播)
2017/12/28 Javascript
JavaScript常用数学函数用法示例
2018/05/14 Javascript
vue实现的双向数据绑定操作示例
2018/12/04 Javascript
详解用Webpack与Babel配置ES6开发环境
2019/03/12 Javascript
操作按钮悬浮固定在微信小程序底部的实现代码
2019/08/02 Javascript
小程序简单两栏瀑布流效果的实现
2019/12/18 Javascript
js实现的订阅发布者模式简单示例
2020/03/14 Javascript
Java Web开发过程中登陆模块的验证码的实现方式总结
2016/05/25 Python
python直接访问私有属性的简单方法
2016/07/25 Python
python爬虫headers设置后无效的解决方法
2017/10/21 Python
使用python为mysql实现restful接口
2018/01/05 Python
使用requests库制作Python爬虫
2018/03/25 Python
对Python 2.7 pandas 中的read_excel详解
2018/05/04 Python
Python解决两个整数相除只得到整数部分的实例
2018/11/10 Python
pytorch自定义初始化权重的方法
2019/08/17 Python
详解PyTorch中Tensor的高阶操作
2019/08/18 Python
python运用pygame库实现双人弹球小游戏
2019/11/25 Python
绘儿乐产品官方在线商店:Crayola.com
2019/09/07 全球购物
DBA的职责都有哪些
2012/05/16 面试题
物流管理专业应届生求职信
2013/11/21 职场文书
奶茶店创业计划书范文
2014/01/17 职场文书
触电现场处置方案
2014/05/14 职场文书
学生党支部工作总结2015
2015/05/26 职场文书
详细聊聊浏览器是如何看闭包的
2021/11/11 Javascript
vue 实现弹窗关闭后刷新效果
2022/04/08 Vue.js