CSV 파일에서 Deta Bases + Alternative 솔루션으로 데이터를 전송합니다.
10755 단어 productivitydetapythondatabase
우리 뭐 할까.
우선, 이것을 두 단계로 진행해 보겠습니다.
전제 조건
시작하자.
csv 파일이 다음과 같다고 상상해보세요.
name,age
fredy,34
god,34345345
mannu,34
우리는 다음과 같이 원합니다.
[{'name': 'fredy', 'age': '34'},{'name': 'god', 'age': '34345345'}
,{'name': 'maanu', 'age': '34'}
]
csv 모듈을 가져와서 시작하겠습니다.
import csv
파일 내용 읽기:
arr=[]
with open (path) as csvFile:
csvReader = csv.DictReader(csvFile)
for csvRow in csvReader:
arr.append(csvRow)
csvReader = csv.DictReader(csvFile)
for csvRow in csvReader:
arr.append(csvRow)
>> print(arr)
[{'name': 'fredy', 'age': '34'},{'name': 'god', 'age': '34345345'}
,{'name': 'maanu', 'age': '34'}
]
csv 파일이 변환되었습니다. 데이터베이스에 업로드할 수 있습니다.
pip install deta
from deta import Deta
deta = Deta(projectkey)
database = deta.Base(db)
for each in arr:
datafile.insert(each)
print("Uploaded {}".format(each))
database = deta.Base(db)
for each in arr:
datafile.insert(each)
print("Uploaded {}".format(each))
최종 코드
def csvtodeta(id,path,db):
deta = Deta(id)
datafile = deta.Base(db)
print("Reading data from {}".format(path))
arr=[]
with open (path) as csvFile:
csvReader = csv.DictReader(csvFile)
for csvRow in csvReader:
arr.append(csvRow)
for each in arr:
datafile.insert(each)
print("Uploaded {}".format(each))
print("succesfully uploaded {} data to {} Base".format(len(arr),db))
대체 솔루션
동일한 작업을 수행하기 위해 Python CLI 도구를 만들었습니다.
pip install csvtodeta
$ csvtodeta --id yourprojectkey --path path/to/csv.csv --db detabasename
$ csvtodeta --id 45345dhsgh3rjdf2ur34hhwf --path src/deta.csv --db detabasename
Reading data from src/deta.csv
Uploaded {'name': 'fredy', 'age': '34'}
Uploaded {'name': 'god', 'age': '34345345'}
Uploaded {'name': 'maanu', 'age': '34'}
succesfully uploaded 3 data to detabasename Base
Github 레포
이 블로그를 읽어주셔서 감사합니다. 의문점이 있거나 잘못된 설명이 있으면 여기에 댓글을 달아주세요.
Reference
이 문제에 관하여(CSV 파일에서 Deta Bases + Alternative 솔루션으로 데이터를 전송합니다.), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://dev.to/fredysomy/transfer-data-from-csv-files-to-deta-bases-alternative-solution-2fhe텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)