2013-09-02 2 views
0

I fetch страница для поиска и сбора некоторых ее ссылок (с использованием arrays) и их добавления в базу данных. при «перепрограммировании» исходной страницы могут возникнуть новые ссылки. как я могу избежать вставки старых ссылок на db и добавлять только новые ссылки?Обнаружение новых ссылок и их добавление в db

Одна идея может искать каждую выбранную ссылку в db и не вставлять двойные, но использовать большой источник в большой базе данных.

+1

Если вы указали уникальный URL-адрес, попытка вставить дубликат не будет разрешена. Вы можете использовать 'ON DUPLICATE KEY IGNORE', чтобы заставить его терпеть неудачу. – Barmar

ответ

0

Вы могли бы сделать «URL» Uniq поля в таблице с:

ALTER IGNORE TABLE mytbl ADD UNIQUE (columnName); 

А затем пройти через каждую ссылку и добавить их, если поле существует MySQL с отклонить его.

Если у вас есть предоставленный доступ к странице, которую вы отказываете, вы можете добавить класс, который говорит, когда вы уже пройдете через этот URL-адрес. а затем искать ссылку без этот класс.

0

Вы можете добавить в базу данных информацию о ваших ссылках, хэш, вычисленную в таких алгоритмах, как MD5 (16 байт) или SHA-1 (30 байт), чтобы проверить, существует ли хэш.

Смежные вопросы