环境
- windows10
- mogodb可视化工具Robo 3T
- 教程日期:19年11月19日
具体步骤
STEP - 0
下载及配置mongodb
- 下载
地址可能会有变化,这个影响不大,可以直接百度找到mondodb官网的下载位置
- 选择版本,这里我选择了windows,压缩包的形式下载
下载后直接解压到任意文件夹内
- 这里,我们解压出来的内容是不包含上图圈出来的东西的,后续我会慢慢讲
- 自行创建数据库数据所在文件夹,这里我给这个文件夹取名data,也就是上图的第一个框框内的文件夹
- 接下来我们就需要告诉mongodb:它的数据库需要建在data这个文件夹内
- 进入bin这个文件夹,创建一个txt文件
- ,打开该txt文件,往里面输入
mongod --dbpath ../data
意思是,执行当前文件夹内一个叫mongod的可执行文件,并且告诉这个文件,数据库所在文件夹是上级目录的data文件夹
- 保存,并命名为start.txt
- 此时这个start还不能真正执行,需要我们将后缀名改为bat,即start.bat
- 开启mongodb数据库
试着双击start.bat,这样就打开了mongodb服务了
开启的时候长这样
注意,如果想要使用mongodb服务时,每次都需要打开该文件哦,并且不能将这个框框关掉
开启Robo 3T
请提前下好并安装Robo 3T
此时mongodb服务是打开的,不然后续连接会显示连接失败
并且提前使用该工具创建好一个数据库,这里不做详细描述,只以图片形式展示步骤
STEP - 1
以下内容为scrapy+mongodb
- 这里我们需要在pipelines.py文件进行修改,这里我们要做的是与mongodb数据库建立连接
需要引入两个东西,如果没有这个库的话,自行安装下(pip install pymongo)
import pymongo
from scrapy.conf import settings
在process_item这个函数的上方加入__init__函数(这个是可以在process_item函数之前运行的,只能用__init__这个名字)
def __init__(self):
host = settings["MONGODB_HOST"]
port = settings["MONGODB_PORT"]
dbname = settings["MONGODB_DBNAME"]
sheetname = settings["MONGODB_SHEETNAME"]
# 创建MONGODB数据库链接
client = pymongo.MongoClient(host=host, port=port)
# 指定数据库
mydb = client[dbname]
# 存放数据的数据库表名
self.post = mydb[sheetname]
然后在管道中,执行插入操作
info = dict[item]
self.post.insert(info)
以上内容可以直接复制粘贴,但是最好自行理解一下
别忘了,顺手在settings.py打开管道哦
注意,因为scrapy的版本变更,在 1.7 版本之后,scrapy.conf 就被移除了,1.7 以后的版本里,应该这样使用 settings.py 中的配置
# from scrapy.conf import settings
from scrapy.utils.project import get_project_settings
def __init__(self):
# 添加
settings = get_project_settings()
host = settings["MONGODB_HOST"]
port = settings["MONGODB_PORT"]
dbname = settings["MONGODB_DBNAME"]
sheetname = settings["MONGODB_SHEETNAME"]
# 创建MONGODB数据库链接
client = pymongo.MongoClient(host=host, port=port)
# 指定数据库
mydb = client[dbname]
# 存放数据的数据库表名
self.post = mydb[sheetname]
STEP - 2
- 这里我们需要修改settings.py文件
# MONGODB 主机名
MONGODB_HOST = "127.0.0.1"
# MONGODB 端口号
MONGODB_PORT = 27017
# 数据库名称,这一项名称可以自定义
MONGODB_DBNAME = "test_name"
# 存放数据的表名称,这一项名称也可以自定义
MONGODB_SHEETNAME = "form_name"
以上内容可以直接在文件中找一块儿空的地方就行了
STEP - 3
运行我们的爬虫,爬虫代码是我在网上随便找的一个,用来爬取豆瓣电影的
这里我们再打开Robo 3T
发现好像没什么变化
这时候我们需要刷新一下,像这样
然后发现多了个东西
打开后你会发现这里面正好使我们设置的数据库名字,表格名字
打开这个表格,并且把它完全呈现出来
搞定!!!