python学习心得(五):mongodb数据库使用

任何爬虫爬取的数据都需要存储,除了使用pandas和csv模块存为本地文件,也可以用数据库完成存储。

根据橡皮擦老师的例子,mongodb数据库存储数据,对应的python模块是pymongo
使用例子,在scrapy框架下,一个典型的pipeline.py文件如下
使用前期,操作本地数据库,数据库是自启动的,并且已经建立了一个db,名称为sun,建立了用户/密码:dba/dba

import time
import pymongo
DATABASE_IP = '127.0.0.1'
DATABSSE_NAME = 'sun'
DATABASE_PORT = 27017
client = pymongo.MongoClient(DATABASE_IP,DATABASE_PORT) #连接数据库
db = client.sun #获取数据库
db.authenticate("dba", "dba") #登录鉴权
collection = db.cloudwork #生成存储表单

class CloudworkPipeline(object):
    def process_item(self, item, spider):
        try:
            #scrapy的存储很简单,就是直接将爬虫返回的item写入表单即可
            collection.insert(item)
         except Exception as e:
            print(e.args)

使用数据库工具查看该数据库内容,我用的是navicat(for mongodb)
navicat示例也可以点击分析查看分析图表,比如分析period,可以看到工期分布的柱状图
在这里插入图片描述如果要在代码里取用数据库,同样的流程

# 先连接数据库
client = pymongo.MongoClient("localhost",27017)
db = client.sun
db.authenticate("dba", "dba")
collection = db.cloudwork

# 加载数据,data就是collection表单
data = DataFrame(list(collection.find()))

# 再通过data取出表的某一列操作
views = data["views_count"]
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

大牛眼

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值