python - 使用 Scrapy 将网站中的新数据提取到现有表中
问题描述
我有一个使用 Python 的 Scrapy 项目。我从网站上提取了我想要的所有数据。但我想将新数据从网站拉到现有表中,而不是在每次更新时从一开始就拉数据。例如,
+---------------------------+
| ID | Name | Job |
+---------------------------+
| 01 | Maria | Doctor |
+---------------------------+
| 02 | Silvia | Teacher |
+---------------------------+
| 03 | Lora | Soldier |
+---------------------------+
随着新的更新,新数据已添加到网站。这个数据是:
+-------------------------+
| ID | Name | Job |
+-------------------------+
| 04 | Blanca | Engineer |
+-------------------------+
所以,当我运行我的代码时,我只想将新数据从网站拉到现有表中。不是从头再来。
我该怎么做?
解决方案
有一种方法可以做到这一点,即使用管道并将数据与前一个数据映射,并在数据库中不可用时插入记录。至于scrapy,它完全依赖于选择器。如果前一个的选择器和站点上的数据相同,那么您在抓取数据时无法区分数据。该管道将帮助您根据您的要求过滤记录。
推荐阅读
- c++ - 如何从头开始创建 avi 文件?
- ios - Xcode 在模拟器上工作,而不是在移动设备上工作;得到错误代码 1
- javascript - 单击以根据地理位置重定向用户
- sql - SQL Where 多个条件
- javascript - 单击按钮后初始化并运行第 3 方
- driver - Buildroot:构建具有未知主编号的设备表
- dev-c++ - 我正在使用 Dev C++,但减法不起作用
- windows-subsystem-for-linux - ddev 可以与 WSL(Linux 的 Windows 子系统)一起使用吗?
- javascript - 按下提交按钮时使用javascript获取特定表单的输入值
- google-apps-script - 谷歌脚本从特定谷歌工作表通过电子邮件发送 PDF 将所有工作表发送到某些工作表上,而不是其他工作表上