大家好,我是带我去滑雪!
文档管理系统(Python+MongoDB)为用户提供了高度的定制性和灵活性,使其成为一个非常有吸引力的选择。这种组合允许开发者创建一个完全根据他们的特定需求、工作流程和数据管理要求量身定制的解决方案。通过使用Python,开发者可以利用其简洁的语法和强大的库生态系统快速开发应用程序,而MongoDB的非关系型数据模型则提供了存储灵活性和高性能的读写操作,这对于处理大量的文档和元数据尤其重要,并且MongoDB是免费。
(1)安装MongoDB
首先我们需要下载和安装MongoDB,链接为:
Download MongoDB Community Server | MongoDB
(2)导入MongoDB库并链接
import pymongo
# 连接数据库,创建数据表
myclient = pymongo.MongoClient("mongodb://localhost:27017")
database = myclient["database"]# 连接接数据库
collection = database["table"]# collection 类似于Mysql中的 table
(3) 导入CSV数据
MongoDB 的数据结构由键值对组成,类似于 JSON 对象;因此在数据插入步骤中,需将数据转化为字典形式(列名作为 key,列值作为 value),数据样式如下:
dataSource = open('E:\工作\硕士\博客\博客粉丝问题\数据可视化+随机森林预测+支出向量机\qxhsj.csv',encoding="gbk",mode='r')
readlines = dataSource.readlines()
keys_list = readlines[0].replace('\n', '').split(',')
for lineData in readlines[1:]:
dataList = lineData.replace('\n', '').split(',')
# 数据字典格式化
dataDict = dict(zip(keys_list, dataList))
if collection.find_one(dataDict):# 插入前判断数据表中是否存在该数据记录;
print("Insert done......")
else:# 不存在时插入
collection.insert_one(dataDict)
myclient = pymongo.MongoClient("mongodb://localhost:27017")
database = myclient["database"]
collection = database["table"]
for post_data in collection.find():
print(post_data)
输出结果:
(4)管理
除了无条件查询外,可以加入一些筛选条件,如下:
查询时,只返回前10条数据:
for post_data in collection.find()[:10]:
print(post_data)
输出结果:
查询时,需以某个字段值以逆序方式返回,例如 _id
字段:
for post_data in collection.find().sort('_id',pymongo.ASCENDING):
print(post_data)
需要数据集的家人们可以去百度网盘(永久有效)获取:
链接:https://pan.baidu.com/s/173deLlgLYUz789M3KHYw-Q?pwd=0ly6
提取码:2138
更多优质内容持续发布中,请移步主页查看。
博主的WeChat:TCB1736732074
点赞+关注,下次不迷路!