TIL 22 | CSV

saneeeeeeee_Ya·2021년 7월 14일
0

🛸

목록 보기
22/25
post-thumbnail

CSV

CSV(comma-separated values)는 몇 가지 필드를 쉼표(,)로 구분한
텍스트 데이터 및 텍스트 파일이다

프로젝트를 실시하기 전 목데이터를 다루기 위해서 CSV파일에서 데이터를 불러와 DB에 저장할 수 있도록 Load_CSV 파일을 만들었다

Django

csv 패키지를 불러와 csv파일을 읽을 수 있다

import csv

from user.models        import *

def user_load():
   with open('user.csv') as user_file: 
       user_rows = csv.reader(user_file, delimiter='|') 
       # 구분자를 ,에서 |로 바꾼다
       next(user_rows, None) 
       #첫 줄 넘기고 가져온다
       for user_row in user_rows: 
           user = User.objects.create(
               email        = user_row[0],
               phone_number = user_row[1],
               sex          = user_row[2],
               birthday     = user_row[3],
               password     = user_row[4],
           )
           user.save()

CSV 파일에 저장된 데이터는 데이터베이스에 저장이 된다

Node.JS

csvtojson 패키지를 불러와 CSV파일을 읽을 수 있다

const csvtojson = require('csvtojson');
const mongoose  = require('mongoose')

const User     = require('../models/User')
const fileName = './product.csv';


var arrayToInsert = [];
csvtojson({ delimiter: "|" }).fromFile(fileName).then(source => {for (var i = 0; i < source.length; i++) {
        var oneRow = {
            email: source[i]['Email'],
            phone_number: source[i]['PhoneNumber'],
            sex: source[i]['Sex'],
            birthday: source[i]['Birthday'],
            password: source[i]['Password'],
        };
        arrayToInsert.push(oneRow);
    }
    User.insertMany(arrayToInsert, (err, result) => {
        if (err) console.log(err);
        if (result) {
            console.log('Import CSV into database successfully.');
        }
    });
});

CSV 파일에 저장된 데이터는 데이터베이스에 저장이 된다

Faker

파이썬에서는 Faker를 이용하여 가짜 데이터를 만들 수 있는 라이브러리를 제공한다

from faker              import Faker

faker.name()
faker.adress()
faker.profile()
.
.
.

Faker 공식문서
https://faker.readthedocs.io/en/master/

profile
🐜https://action2thefuture.github.io/🐜

0개의 댓글