这似乎是一件非常简单的事情,但我找不到任何真正解释如何做到这一点的讨论。
我正在用MongoDB
and构建一个刮板Node.js
。它每天运行一次,并将数百个 url 和记录刮到数据库中。例子:
- Scraper 到这个谷歌图片搜索页面寻找“堆栈溢出”
- Scraper 从此页面获取前 100 个链接
- 链接的
url
、img src
和page title
的记录domain name
被保存到 MongoDB。
这是我想要实现的目标:
- 如果图片不再在100个抓取的链接中,我想从databqse中删除它
- 如果图像仍然在 100 个抓取的链接中,但细节发生了变化(例如新的页面标题),我想找到
mongodb
记录并更新它。 - 如果图像不存在,我想创建一条新记录
我遇到的问题是删除尚未删除的条目。实现这一目标的最佳方法是什么?
到目前为止,我的代码成功地检查了条目是否存在,并更新了它们。它正在删除我遇到问题的不再相关的记录。Pastebin链接在这里: