美文网首页
【爬虫】-004-MongoDB数据库操作

【爬虫】-004-MongoDB数据库操作

作者: 9756a8680596 | 来源:发表于2018-12-27 20:03 被阅读8次

例子

简单的一个存数据,并操作数据库的例子

# coding: UTF-8

from pymongo import MongoClient

host = 'localhost'
port = 27017

# 连接上mongodb服务器
client = MongoClient(host, port)

# 创建数据库的名称为dbTEST
# 在python中创建对象操作数据库
dbTEST = client['dbTEST']

# 创建表名称为sheetONE,在数据库dbTEST中
sheetOne = dbTEST['sheetONE']

# # 打开文件,读取里面的内容
path = '/Users/caoweiwei/Desktop/05.15.18.txt'
with open(path, 'r') as f:
    lines = f.readlines()
    for index, line in enumerate(lines):
        # 枚举操作,就是以前for循环的一个计数器和内容的读取
        data = {
            'index': index,
            'line': line,
            'words': len(line.split()),
        }
        # 向数据库添加数据
        sheetOne.insert_one(data)

for item in sheetOne.find():
    print(item['line'])

操作介绍

分析下Mongo DB的操作流程

  1. 初始化数据库。导入mongo db包,并且初始化本地环境
from pymongo import MongoClient
client = MongoClient(local, port)
  1. 创建数据库和相关存储表格
dbTEST = client['dbTEST']
sheetName = dbTEST['sheetName']

左边的是python中创建的对象,右边中括号中的是数据库和其中表单的名称。为了便于记忆和操作,所以python对象和数据库名字相同

  1. 读取文件,把文件中的内容写入数据库
lines = f.readlines()
for index, line in enumerate(lines):
    data = {
        'index': index,
        'line': line,
        'words': len(line.split()),
    }
    sheetName.insert_one(data)

在这个例子中,使用了字典作为数据结构,把文件中的每一行:序号index、内容line和字数words分别存到数据库dbTEST中的表sheetName中,如下图所示。

  1. 接着,查询数据库,看数据是否正确存入
for item in sheetName.find({'words': 0}):
    print(item['line'])

回顾

相关文章

网友评论

      本文标题:【爬虫】-004-MongoDB数据库操作

      本文链接:https://www.haomeiwen.com/subject/rcmdlqtx.html