python Django批量導入不重復數(shù)據(jù)
本文為大家分享了python Django批量導入不重復數(shù)據(jù)的實現(xiàn)代碼,供大家參考,具體內(nèi)容如下
程序如下:
#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 "重復數(shù)據(jù)"+str(x)+"條,成功導入數(shù)據(jù)"+str(y)+"條"
本文主要運用模型中exists()判斷導入數(shù)據(jù)和數(shù)據(jù)庫是否重復,如果不重復就用bulk_create批量導入數(shù)據(jù)庫!
可對照參考我的另一篇文章:批量導入數(shù)據(jù)
以上就是本文的全部內(nèi)容,希望對大家的學習有所幫助。
相關文章
Python實現(xiàn)檢測文件的MD5值來查找重復文件案例
這篇文章主要介紹了Python實現(xiàn)檢測文件的MD5值來查找重復文件案例,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-03-03python中字典dict排序sorted的實現(xiàn)
本文主要介紹了python中字典dict排序sorted的實現(xiàn),文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2023-05-05Python中Jieba進行詞頻統(tǒng)計與關鍵詞提取
本文主要介紹了Python中Jieba進行詞頻統(tǒng)計與關鍵詞提取,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2023-03-03Eclipse和PyDev搭建完美Python開發(fā)環(huán)境教程(Windows篇)
這篇文章主要介紹了Eclipse和PyDev搭建完美Python開發(fā)環(huán)境教程(Windows篇),具有一定的參考價值,感興趣的小伙伴可以了解一下。2016-11-11基于python計算滾動方差(標準差)talib和pd.rolling函數(shù)差異詳解
這篇文章主要介紹了基于python計算滾動方差(標準差)talib和pd.rolling函數(shù)差異詳解,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-06-06