核心工具包:pymongo
python通过pymongo来连接mongo
pymongo安装
命令提示符中安装:pip install pymongo
查看安装版本:pip show pymongo
创建MongoClient对象,连接mongo
1) 创建对象
myclient = pymongo.MongoClient(“mongodb://localhost:27017/”)
2)查看现有数据库
list_database_names()
3)读取数据库
db = myclient[数据库名]
示例
查询集合、文档
1)查看现有集合
db.list_collection_names()
2)读取集合
data = db[集合名]
示例
3)查询文档
查询单条数据: find_one() → 输出字典
查询所有数据: find({}) → 输出可迭代对象<class ‘pymongo.cursor.Cursor’>
示例
查找一条数据
查找多条数据
也可以把多条数据存成dataframe格式的数据,直接进行数据分析
插入文档
插入单个文档:insert_one()
插入多个文档:insert_many() → 通过字典列表插入
示例
删除集合、文档
1)删除文档
删除一个文档:delete_one()
删除多个文档:delete_many()
如果传入的是一个空的查询对象,则会删除集合中的所有文档
示例
删除单条数据
删除多条数据
删除所有数据
2)删除集合
drop()
示例
pandas如何配合mongo:
1)通过查询的方式,将数据存成dataframe(刚刚已经尝试过了)
示例
2)dataframe通过.to_dict()方法输出字典列表,再通过insert_many()导入数据库
DataFrame.to_dict(orient=’’),orient参数如下,这里建议用’records’
‘dict’ (default) : dict like {column -> {index -> value}}
‘list’ : dict like {column -> [values]}
‘series’ : dict like {column -> Series(values)}
‘split’ : dict like {‘index’ -> [index], ‘columns’ -> [columns], ‘data’ -> [values]}
‘records’ : list like [{column -> value}, … , {column -> value}]
‘index’ : dict like {index -> {column -> value}}
示例
注意:
数据修改、处理、分析,都在pandas中执行
数据爬取过程中,以字典方式存储每一条数据,可以直接通过insert_one()插入数据库中