数据库之 mongo 基础

前言:就学习爬虫而言,对于三种常见的数据库做个基本了解足以,所以笔记都是浅尝辄止,不会涉及太深入的东西。


MongoDB基本介绍

爬虫数据存储的数据库选择

一般爬虫使用的数据库,是根据项目来定的。

如需求方指定了使用什么数据库、如果没指定,那么决定权就在爬虫程序员手里,如果自选的话,mysql 和mongodb 用的都是比较多的。

但不同的数据库品种有各自的优缺点,不同的场景任何一种数据库都可以用来存储,但是某种可能会更好。

比如抓取的数据之间的耦合性很高,关系比较复杂的话,那么mysql可能会是更好的选择。

如果抓取的数据是分版块的,并且它们之间没有相似性或关联性不强,那么可能mongodb 会更好。

=====================================================================

mongoDB的生态、理念非常先进而且成熟、但是mongoDB不仅有开源版本,还有企业版本。所以有部分公司比较担心,哪天无法使用mongoDB了,所以也会产生一些替代产品。

DynamoDB  : AWS
SequoiaDB : 巨杉数据库

安装及链接mongo

python安装:pip install pymongo

数据库连接,无密码

import pymongo
mongo = pymongo.MongoClient("mongodb://ip/")

数据库连接,有密码

import pymongo
from urllib.parse import quote_plus

if __name__ == '__main__':
    # 方式1:
    username = quote_plus("mongotest") # 字符转移,防止出现多字节的字符,例如中文或者特殊符号
    password = quote_plus("123456")
    database = quote_plus("mongotest")
    # 获取数据库连接对象
    mongo = pymongo.MongoClient(f"mongodb://{username}:{password}@127.0.0.1:27017/{database}")
    print(mongo)
    # 获取数据库操作对象
    db = mongo[database]
    print(db)
    # 获取集合操作对象
    collection = db["users"]
    print(collection)


    # 方式2:
    mongo = pymongo.MongoClient('mongodb://127.0.0.1:27017')
    db = mongo["mongotest"]
    username = "mongotest"
    password = "123456"
    db.authenticate(username, password) # 相当于在monogDB终端下的db.auth()
    print(db)
    collection = db["users"]
    print(collection)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值