これは非常に単純なことのように思えますが、その方法を実際に説明している議論は見つかりません。
と でスクレーパーを構築していMongoDB
ますNode.js
。1 日 1 回実行され、数百の URL とレコードがデータベースにスクレイピングされます。例:
- スクレイパーは、「スタック オーバーフロー」のこの Google 画像検索ページに移動します
- Scraper は、このページから上位 100 個のリンクを取得します
- リンクの
url
、img src
、page title
の記録がdomain name
MongoDB に保存されます。
これが私が達成しようとしていることです:
- スクレイピングされた100のリンクに画像がなくなったら、データbqseから削除したい
mongodb
画像がスクレイピングされた 100 個のリンクに残っているが、詳細が変更されている場合 (新しいページ タイトルなど)、レコードを見つけて更新したいと考えています。- 画像がまだ存在しない場合は、新しいレコードを作成したい
私が少し問題を抱えているのは、スクレイピングされていないエントリを削除することです。これを達成するための最良の方法は何ですか?
これまでのところ、私のコードはエントリが存在するかどうかを正常にチェックし、それらを更新します。私が問題を抱えているのは、関連性がなくなったレコードを削除することです。ペーストビンのリンクはこちら: