爬虫数据存储 --MongoDB

本贴最后更新于 1440 天前,其中的信息可能已经沧海桑田

MongoDB 模块

pip install pymongo

MongoDB 链接方式: :{mongodb_port}

默认端口号:27017

插入数据

import pymongo


# 创建MongoDB链接
myClient = pymongo.MongoClient("mongodb://127.0.0.1:27017")
# 创建数据库
mydb = myClient['reptiles']
# 创建数据表
myCollection = mydb['reptiles_test']
# 插入单条记录(数据)
# myCollection.insert_one({"name": "reptiles_test01", "flag": 1})
my_list = [
    {"name": "python", "flag": 100},
    {"name": "shell", "flag": 101},
    {"name": "go", "flag": 102},
    {"name": "html", "flag": 103},
    {"name": "jQuery", "flag": 104}
]
# 插入多条记录
myCollection.insert_many(my_list)

注:新建的数据库表要在插入记录后才可以显示

MongoDB 操作:

查看库:show dbs

进入库:use db_name

查看表:show collections

查看数据:db.table_name.find()

查看数据

# 查看数据
# result = myCollection.find()    # find()返回的是一个游标数据,需要for循环进行查看

# 查看指定字段的数据(只查看name和flag字段)
result = myCollection.find({}, {'_id': 0, 'name': 1, 'flag': 1})    # find({}, {}) 第一个{}代表查询所有,第二个代表限定条件; 0:不显示,1:显示
for item in result:
    print(item)

# 查看单条数据
# one_result = myCollection.find_one({'name': 'python'})
one_result = myCollection.find_one({'name': 'python'}, {'_id': 0, 'name': 1, 'flag': 1})    # 返回的是数据
print(one_result)

# 高级查询一  [$gt大于; $lt小于]
gt_result = myCollection.find({'flag': {'$gt': 100}})   # 查询flag大于100的数据
for item in gt_result:
    print(item)

# 高级查询二  正则表达式条件查询[$regex]
re_result = myCollection.find({'name': {'$regex': '^p'}})
for item in re_result:
    print(item)
  • Python

    Python 是一种面向对象、直译式电脑编程语言,具有近二十年的发展历史,成熟且稳定。它包含了一组完善而且容易理解的标准库,能够轻松完成很多常见的任务。它的语法简捷和清晰,尽量使用无异义的英语单词,与其它大多数程序设计语言使用大括号不一样,它使用缩进来定义语句块。

    541 引用 • 672 回帖 • 1 关注
  • 爬虫

    网络爬虫(Spider、Crawler),是一种按照一定的规则,自动地抓取万维网信息的程序。

    106 引用 • 275 回帖

相关帖子

欢迎来到这里!

我们正在构建一个小众社区,大家在这里相互信任,以平等 • 自由 • 奔放的价值观进行分享交流。最终,希望大家能够找到与自己志同道合的伙伴,共同成长。

注册 关于
请输入回帖内容 ...