mongodb使用+scrapy中使用

安装

去官网下载解压
这里贴上windows版本下载地址
https://fastdl.mongodb.org/win32/mongodb-win32-x86_64-2008plus-ssl-4.0.3.zip
在解压目录下创建文件夹data\db作为数据库路径

为了方便使用可以写一个脚本文件start.bat
内容如下

D:\mongodb-win32-x86_64-2008plus-ssl-4.0.3\bin\mongod.exe --dbpath D:\mongodb-win32-x86_64-2008plus-ssl-4.0.3\data\db

双击脚本文件即可启动服务
然后再bin目录下启动mongo.exe即可连接服务

相关操作

  • 列出所在物理上的存在的数据库
    shou dbs

  • 切换、创建数据库
    use 数据库名
    use person
    创建好数据库没有做操作不会存到磁盘

  • 删除数据库
    use person
    dropDatabase()

  • 查看表
    show tables
    show collections

  • 创建集合
    db.createCollection(‘student’)

  • 删除集合
    db.student.drop()

往集合插入数据

save不会检查重复数据

  • db.student.insert({‘name’:‘大王’})
  • db.student.save({‘name’:‘小王’})
    增加多条用列表里放多个字典
  • 更新数据
    bd.student.update({‘name’:‘大王’},{{$set:{"age’:20}})
  • 删除
    db.student.remove({‘name’:‘大王’})

查找

db.dtudent.find({})

使用pymongo

import pymongo
#连接数据库
client = pymongo.MongoClient('localhost',27017)
#选择实例
db = client.person
#选择集合
student = db.student
# 操作数据
result = student.find()

print(result.next())
# for i in result:
#     print(i)
  • 操作数据
# 操作数据
# result = student.find()
# print(result.next())

# #过滤条件
# result = student.find({'name':'haha'})
# for r in result:
#     print(r)
#排序
result = student.find().sort('age',-1)
for r in result:
    print(r)

#获取文档个数
result = student.find().count()
print(result)

# #增加数据
# data = {'name':'xiaoming','age':12}
# # student.insert(data)
# student.insert_one(data)

# #删除数据
# data = {'name':'xiaoming','age':12}
# student.remove(data)
# #更新
# args = {'name':'xiaoming'}
# result = student.find_one(args)
# result['country'] = 'beijing'
# student.update(args,{'$set':result})

scrapy中使用

在pipline文件中编写

import pymongo

class MongoPipeline(object):
    def open_spider(self,spider):
        self.client = pymongo.MongoClient()
    def process_item(self, item, spider):
        self.client.douban.movie.insert_one(item)
        return item
    def close_spider(self,spider):
        self.client.close()
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值