fetch
リンクの一部を検索して収集し ( を使用arrays
)、それらをデータベースに追加するためのページです。ソースページを「再取得」すると、新しいリンクが含まれている可能性があります。古いリンクを db に挿入するのを避け、新しいリンクのみを追加するにはどうすればよいですか?
1つのアイデアは、取得したすべてのリンクをdbで検索し、二重のリンクを挿入しないようにすることですが、大きなデータベースで重いソースを使用します.
次のようにして、テーブル内のフィールド「url」を一意にすることができます。
ALTER IGNORE TABLE mytbl ADD UNIQUE (columnName);
次に、すべてのリンクを調べて追加します。フィールドが存在する場合は、mysql を拒否します。
廃棄するページへのアクセスが許可されている場合は、この URL を既に通過したことを示すクラスを追加できます。そして、このクラスなしでリンクのみを検索します。
MD5 (16 バイト) や SHA-1 (30 バイト) などのアルゴリズムで計算されたハッシュをリンク情報と共にデータベースに追加して、ハッシュが存在するかどうかを確認できます。