在scrapy框架中判断数据库中是否存在某个表来实现表中数据全量更新

本文介绍了如何在Scrapy爬虫项目中实现数据库全量更新的策略,通过判断数据库中是否存在特定表,如果存在则删除并重新创建,确保数据始终保持最新状态。避免使用基于字段的增量更新,因为这种方法对于灵活性高的数据不适用。
摘要由CSDN通过智能技术生成

现在有这么个需求:

就是我有一个爬虫脚本,我想把爬取到的数据存入到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()

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值