说明
之前是爬取一些数据,将它形成datafram的形式,一块写入mongdb,因为mongdb的存储是json形式的,然后后续需要嵌套的json数据,不知道如何将datafram的一条条拆开,才有了后面的操作,后来用爬取存储在csv里面的数据做测试,一条条的读,然后形成一个简单的嵌套,然后一条一条写入到MongoDB,以作记录。
或许有其他的更好的方法,欢迎留言告知。
# 获取连接
client = pm.MongoClient('ip',port) # 端口号是数值型
# 连接数据库,client后面跟数据库名
db = client['table']
#获取集合,后面跟表名
stb = db['test']
with open('filename', "rt", encoding="utf-8-sig") as f:
reader = csv.reader(f)
# print(type(reader))
# for row in reader:
# print(row)
rows=[row for row in reader]
data={}
for row in rows:
data['列1'] = row[0]
data['列2'] = row[1]
data['列3'] = row[2]
data['列4] = row[4]
data['列5'] =row[5]
da = {
"列4": data.get("列4"),
"列5": data.get("列5")
}
#这里作了一个嵌套
data.pop("列4")
data.pop("列5")
data.update(
{"else_attr": da}
)
print(data)
stb.insert(data)
data.pop("_id")