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从零实现贝叶斯分类器的机器学习的教程
Mar 31 Python
Python全局变量操作详解
Apr 14 Python
在Python中操作字符串之startswith()方法的使用
May 20 Python
使用Python的Django框架结合jQuery实现AJAX购物车页面
Apr 11 Python
使用python3构建文件传输的方法
Feb 13 Python
查看python安装路径及pip安装的包列表及路径
Apr 03 Python
python实现切割url得到域名、协议、主机名等各个字段的例子
Jul 25 Python
python实现与redis交互操作详解
Apr 21 Python
jupyter 添加不同内核的操作
Feb 06 Python
Python使用paramiko连接远程服务器执行Shell命令的实现
Mar 04 Python
pytorch锁死在dataloader(训练时卡死)
May 28 Python
python可视化之颜色映射详解
Sep 15 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
php去掉字符串的最后一个字符附substr()的用法
2011/03/23 PHP
一个简单的网页密码登陆php代码
2012/07/17 PHP
windows server 2008/2012安装php iis7 mysql环境搭建教程
2016/06/30 PHP
改变javascript函数内部this指针指向的三种方法
2010/04/23 Javascript
使用js修改客户端注册表的方法
2013/08/09 Javascript
js实现iframe自动自适应高度的方法
2015/02/17 Javascript
jQuery基于cookie实现的购物车实例分析
2015/12/24 Javascript
实例详解JavaScript获取链接参数的方法
2016/01/01 Javascript
使用jQuery调用XML实现无刷新即时聊天
2016/08/07 Javascript
微信小程序 利用css实现遮罩效果实例详解
2017/01/21 Javascript
Node.js+ES6+dropload.js实现移动端下拉加载实例
2017/06/01 Javascript
Vue报错:Uncaught TypeError: Cannot assign to read only property’exports‘ of object’#‘的解决方法
2017/06/17 Javascript
原生JS实现自定义滚动条效果
2020/10/27 Javascript
实例详解JSON取值(key是中文或者数字)方式
2017/08/24 Javascript
详解Vue Elememt-UI构建管理后台
2018/02/27 Javascript
简化vuex的状态管理方案的方法
2018/06/02 Javascript
Vuejs 实现简易 todoList 功能 与 组件实例代码
2018/09/10 Javascript
vue-cli3 取消eslint校验代码的解决办法
2020/01/16 Javascript
Vue实现穿梭框效果
2020/09/30 Javascript
Python中获取网页状态码的两个方法
2014/11/03 Python
Python多线程编程(四):使用Lock互斥锁
2015/04/05 Python
python、java等哪一门编程语言适合人工智能?
2017/11/13 Python
python:pandas合并csv文件的方法(图书数据集成)
2018/04/12 Python
解决pandas使用read_csv()读取文件遇到的问题
2018/06/15 Python
pycharm 取消默认的右击运行unittest的方法
2018/11/29 Python
Python中变量的输入输出实例代码详解
2019/07/28 Python
Python 异常处理Ⅳ过程图解
2019/10/18 Python
python利用递归方法实现求集合的幂集
2020/09/07 Python
澳大利亚排名第一的在线酒类商店:MyBottleShop
2018/04/26 全球购物
Bitiba意大利:在线宠物商店
2020/10/31 全球购物
Burt’s Bees英国官网:世界领先的天然个人护理品牌
2020/08/17 全球购物
顶撞领导检讨书
2014/01/29 职场文书
医院2014国庆节活动策划方案
2014/09/21 职场文书
小学作文之描写天气
2019/08/15 职场文书
导游词之天津古文化街
2019/11/09 职场文书
python xlwt模块的使用解析
2021/04/13 Python