Python操作MongoDB详解及实例

发布时间 - 2026-01-11 01:09:41    点击率:

Python操作MongoDB详解及实例

由于需要在页面展示MongoDB库里的数据,所以考虑使用python操作MongoDB,PyMongo模块是Python对MongoDB操作的接口包,所以首页安装pymongo。

1、安装命令

pip install pymongo

2、查询命令:

import pymongo

# 创建连接
client = pymongo.MongoClient(host="10.0.2.38", port=27017)
# 连接probeb库
db = client['probeb']
# 打印库中所有集合名称
print(db.collection_names())
# 连接到test1这个集合
collection = db.test1

# 这条命令是查找rssi大于srssi小于erssi,stime大于stime,小于etime的数据以stime倒叙排列
sumdata = collection.find({"RSSI": {"$gt": int(srssi), "$lt": int(erssi)}, "stime": {"$gt": stime, "$lt": etime}}).sort([('stime', -1)])

#这条命令是查找rssi大于srssi小于erssi,stime大于stime小于etime 且mac等于search或者dmac等于search(search是个变量, "$options":"i"是为了不区分search内容的大小写)的数据,以stime倒叙排列
sumdata = collection.find({"RSSI": {"$gt": int(srssi), "$lt": int(erssi)}, "stime": {"$gt": stime, "$lt": etime}, "$or": [{"mac": {"$regex": search, "$options":"i"}}, {"dmac": {"$regex": search,"$options":"i"}}]}).sort([('stime', -1)])

# 现在查询的结果赋值给sumdata,如果想查出具体数据,可以使用for循环
for data in sumdata:
  print(data)

# 注意:在使用python操作MongoDB进行排序的时候,不能使用db.test1.find().sort({"name" : 1, "age" : 1}) 
# 否则会遇到如下异常:
# TypeError: if no direction is specified, key_or_list must be an instance of list 
# 解决方法:
# db.tes1t.find().sort([("name", 1), ("age" , 1)]) 
# 原因:在python中只能使用列表进行排序,不能使用字典

3、插入数据

import datetime

# 插入数据
account = {"AccountID":1,"UserName":"libing",'date':datetime.datetime.now()}
accounts = [{"AccountID":2,"UserName":"liuw",'date':datetime.datetime.now()},
       {"AccountID":3,"UserName":"urling",'date':datetime.datetime.now()}]#每条记录插入时间都
 
collections.insert(account)

4、总而言之,python操作MongoDB和MongoDB的命令操作大同小异。只要熟练使用MongoDB的命令操作,那么用pymongo操作就不是问题。

 感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!


# Python操作MongoDB详解  # Python操作MongoDB简单实例  # python连接mongodb操作数据示例(mongodb数据库配置类)  # Python中的MongoDB基本操作:连接、查询实例  # Python操作MongoDB数据库PyMongo库使用方法  # 使用Python脚本操作MongoDB的教程  # python操作MongoDB基础知识  # Python常见MongoDB数据库操作实例总结  # 详解Python3操作Mongodb简明易懂教程  # Python操作Mongodb数据库的方法小结  # Python操作mongodb的9个步骤  # 利用Python操作MongoDB数据库的详细指南  # 这条  # 是个  # 希望能  # 大同小异  # 可以使用  # 谢谢大家  # 首页  # 解决方法  # 则会  # 连接到  # 每条  # 库中  # 是为了  # 库里  # erssi  # probeb  # port  # print  # collection_names  # srssi 


相关栏目: 【 网站优化151355 】 【 网络推广146373 】 【 网络技术251813 】 【 AI营销90571


相关推荐: 如何在宝塔面板中创建新站点?  详解Android中Activity的四大启动模式实验简述  Laravel如何设置自定义的日志文件名_Laravel根据日期或用户ID生成动态日志【技巧】  Laravel怎么使用Markdown渲染文档_Laravel将Markdown内容转HTML页面展示【实战】  Laravel如何监控和管理失败的队列任务_Laravel失败任务处理与监控  JS实现鼠标移上去显示图片或微信二维码  Laravel如何清理系统缓存命令_Laravel清除路由配置及视图缓存的方法【总结】  Laravel Telescope怎么调试_使用Laravel Telescope进行应用监控与调试  laravel怎么实现图片的压缩和裁剪_laravel图片压缩与裁剪方法  php8.4header发送头信息失败怎么办_php8.4header函数问题解决【解答】  网站制作软件有哪些,制图软件有哪些?  如何快速搭建高效服务器建站系统?  如何在阿里云高效完成企业建站全流程?  活动邀请函制作网站有哪些,活动邀请函文案?  音乐网站服务器如何优化API响应速度?  儿童网站界面设计图片,中国少年儿童教育网站-怎么去注册?  Edge浏览器怎么启用睡眠标签页_节省电脑内存占用优化技巧  Python结构化数据采集_字段抽取解析【教程】  如何在 Go 中优雅地映射具有动态字段的 JSON 对象到结构体  Win11任务栏卡死怎么办 Windows11任务栏无反应解决方法【教程】  html5的keygen标签为什么废弃_替代方案说明【解答】  Laravel怎么连接多个数据库_Laravel多数据库连接配置  Laravel如何配置Horizon来管理队列?(安装和使用)  教学论文网站制作软件有哪些,写论文用什么软件 ?  Laravel的契約(Contracts)是什么_深入理解Laravel Contracts与依赖倒置  Laravel怎么使用Blade模板引擎_Laravel模板继承与Component组件复用【手册】  最好的网站制作公司,网购哪个网站口碑最好,推荐几个?谢谢?  Laravel广播系统如何实现实时通信_Laravel Reverb与WebSockets实战教程  韩国服务器如何优化跨境访问实现高效连接?  Laravel如何操作JSON类型的数据库字段?(Eloquent示例)  Win11应用商店下载慢怎么办 Win11更改DNS提速下载【修复】  高防服务器如何保障网站安全无虞?  如何快速搭建高效香港服务器网站?  Laravel如何将应用部署到生产服务器_Laravel生产环境部署流程  java中使用zxing批量生成二维码立牌  C++时间戳转换成日期时间的步骤和示例代码  Google浏览器为什么这么卡 Google浏览器提速优化设置步骤【方法】  如何快速搭建高效WAP手机网站?  如何用AWS免费套餐快速搭建高效网站?  Laravel怎么实现微信登录_Laravel Socialite第三方登录集成  网站制作报价单模板图片,小松挖机官方网站报价?  laravel怎么使用数据库工厂(Factory)生成带有关联模型的数据_laravel Factory生成关联数据方法  如何打造高效商业网站?建站目的决定转化率  bootstrap日历插件datetimepicker使用方法  rsync同步时出现rsync: failed to set times on “xxxx”: Operation not permitted  使用Dockerfile构建java web环境  php后缀怎么变mp4格式错误_修改扩展名提示格式不对怎么办【技巧】  微信小程序 require机制详解及实例代码  如何获取上海专业网站定制建站电话?  Laravel事件和监听器如何实现_Laravel Events & Listeners解耦应用的实战教程