连接数据库

client = pymongo.MongoClient(host="127.0.0.1", port=6666)
db = client['Media']
db.authenticate('spider', 'spider')
collect = db['bilibili']

上面包括链接mongodb、选择数据库、数据库认证和选取数据表的代码。

添加数据

collect.insert_one({'url': 'https://www.bilibili.com/video/av44846176', 'downloads': 0})

还可以使用一个list,其中放多个这样的字典,用insert_many就可以一次将list中的所有dict的数据在一次请求中全部写入MongoDB。

查询数据

collect.find_one({'url': 'https://www.bilibili.com/video/av44846176'})

对于唯一索引,find_one就就足够,还可以用find_many查询所有符合条件的条目。

删除数据

collect.delete_one({'url': 'https://www.bilibili.com/video/av44846176'})

使用delete_many可以删除符合条件的多条数据。

修改数据

collect.update_one({'url': 'https://www.bilibili.com/video/av44846176'}, {'$set':{ 'downloads': 1}})

修改数据的第一个参数是查询条件,第二个参数是要修改的字段,第二个参数不能直接使用字典,而是要将修改的字典放入$set的value中。上面就是将指定的url的downloads值改为1。

还可以使用update_many修改符合条件的多个数据条目。

最新文章

  1. 怎么使用jquery判断一个元素是否含有一个指定的类(class)
  2. 【Linux】——ctags
  3. [C语言](*p)++与 ++(*p)与 *p++ 与 ++*p
  4. BYOA,也许是IT大叔眼中的新生代萝莉
  5. Windows PE 之 MASM32 环境搭建
  6. Git简明教程
  7. 关于机器学习-EM算法新解
  8. .net的WebForm模拟MVC进行模型绑定,让自己少操劳
  9. 打造阅读Linux源代码利器
  10. strcpy, mencpy, memmove三者区别
  11. python2与python3
  12. 小师妹问 easyUI mergeCells 行合并后表头和内容对不齐
  13. iOS 输入限制之 InputKit
  14. [HTTP] tcp/ip详解 链路层 网络层 传输层 应用层
  15. linux虚拟机黑屏解决
  16. JS 强制类型转化
  17. 元素滚动到底部或顶部时阻止body滚动
  18. GPS信号不足情况下,如何用GPRS模块根据基站进行定位
  19. TypeScript 基础入门(一)
  20. Java分布式:消息队列(Message Queue)

热门文章

  1. 微信小程序开发(一)基础知识学习
  2. .log文件超过2.56MB?Pycharm的.log文件读取不完全?.log文件无法被调用?
  3. 细说JavaScript 导出 上万条Excel数据
  4. ~~网络编程(三):TCP/UDP~~
  5. log4j日志打印级别动态调整
  6. three.js 制作魔方
  7. 使用Openresty构建认证网关
  8. Android:沉浸式状态栏(二)集成
  9. 第十二章 类加载器&反射
  10. Linux的VMWare中Centos7磁盘分区管理 fdisk分区和制作文件系统格式化和开机自动挂载