现在有这么个需求:
就是我有一个爬虫脚本,我想把爬取到的数据存入到mysql数据库里去(这个是比较简单的),同时我还想定时执行这个脚本文件,然后让用户能及时看到最新的数据,所以就出现一个问题就是如何保证数据库里的数据是最新的呢?
这里使用的是一个全量的办法,不是一个增量的办法。
增量:就是每次插入数据的时候,根据里面的一个字段(时间time)来判断即将插入的数据是不是在数据库里,如果没有就插入,如果已经存在就在原始数据的基础上进行增加,所以叫增量。
全量:就是我们每次插入数据的时候,我们都是首先判断这个表格是不是存在,如果存在就是直接drop,然后重新create,如果不存在直接create。这个是针对全局的,所以叫全量。
由于我的需求没有办法使用字段来判断,(一般灵活性比较强的数据都不太方便使用增量,因为变换存在着不确定性,不能很好的使用固定的字段来判断)
我是使用scrapy框架进行数据的获取,所以解决办法是针对scrapy框架的办法。
我的思想是,每次程序执行的时候,我都先判断数据库中是不是存在这个表格,如果存在就删除,不存在就创建。主要语句如下:
self.connect=pymysql.connect(host='localhost',user='root',password='*****',db='jinrong',port=3306)
self.cursor=self.connect.cursor()