簡體   English   中英

如何使用python導入csv文件到mongoDB

[英]How to import csv file into mongoDB using python

我是 Python 的新手。我想將 csv 文件的特定列插入到我的 mongodb 中的集合中,我知道如何使用 shell 進行操作,但我想使用 python 進行操作,因為我正在學習 882574428590

這是我到目前為止所擁有的:

import csv
import json
import pandas as pd
import sys, getopt, pprint
from pymongo import MongoClient
#CSV to JSON Conversion
with open('netflix_titles.csv','rt', encoding="utf8") as file:
data = file.read()
mongo_client=MongoClient() 
db=mongo_client.Netflix
db.segment.drop()
header= [ "show_id", "director"]

for each in data:
    row={}
    for field in header:
        row[field]=each[field]  

    db.segment.insert(row)

在這一行中只會拋出一個縮進錯誤:

data = file.read()

您必須將制表符放在date = file.read()之前,因為with縮進級別的增加。

如果您打算使用csv模塊,那么一定要使用該模塊的閱讀器 function。 它將處理引號、空格等。另外,不確定你的

for each in data:

實際上是在做你認為的 CSV 分手。 這更整潔(假設您想從 header 名稱的 static 數組驅動操作):

with open('data.csv', 'r') as csvfile:
    header = [ "show_id", "director"]
    reader = csv.reader(csvfile)

    for row in reader:
        doc={}
        for n in range(0,len(header)):
            doc[header[n]] = row[n]

        db.foo.insert(doc)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM