Scrapy框架爬虫学习--3
继上一节课爬取到了数据之后,这一节将数据入库。
因为python自带了 SQLite/seklait/ 数据库,直接用就可以。
1. 新建 SQLite 数据库
在pycharm下进入Terml,然后进入ipython模式,之后
import sqlite3
zufang = sqlite3.connect('zufang.sqlite')
create_table = 'create table zufang ( title varchar(512), money varchar(128) )'
zufang.execute(create_table) #实际上就是这个语句
再退出 Term,就可以看到,建立了数据库。可以在database中看到这个数据中的表单以及字段。
2. 爬取来的数据插入数据库
这里分为两个步骤:1)数据通过Items传入Pipelines
2)通过Pip传入数据库
1) 先看传入Pip。
首先,要更改settings.py 将注释掉的Items,去注释。注意这里名字和数字。
然后去Items里面把类改写一下
同时在爬虫脚本中,我们进行引入该item类
这里注意引用时候的问题,最终我把item脚本复制过去通文件夹目录下 from ..items Import 来做的(讲道理有更好的解决办法,之后再看)
这里改写一点点,然后在Ter中运行爬虫即可。可以发现这时候已经传到Pip里面了(因为已经执行了Pip中的Print语句)
剩下的明天写。
2) 从Pip入数据库
这里只需要改Pipeline脚本中的代码即可,将数据入库。
这里共定义了3个函数,其中第二个是从iitem传入函数,这个函数之前就写好了
只需要写第一个链接和第三个关闭函数。
之后就可以看到数据库中插入了我们爬来的数据
整个框架就做完了。