Мониторинг 1000+ сайтов на предмет изменений за месяц

425
Sulad

Мне нужно отслеживать более 1000 конкретных ссылок в течение одного месяца, чтобы увидеть, изменился ли их контент, и мне интересно, смогу ли я как-нибудь это автоматизировать. Одна идея состояла в том, чтобы просто загружать эти сайты время от времени в течение одного месяца и сравнивать исходные файлы. Если я пойду по этому пути, знаете ли вы, ребята, инструмент (расширение для браузера?), Который бы облегчил такую ​​загрузку? Я пробовал HTTrack, но он терпит неудачу после первых 100 ссылок или около того. В качестве альтернативы (бесплатный?) Веб-сервис, который может отслеживать набор веб-сайтов, также может работать. Я использовал https://visualping.io/ раньше, но он не предназначен для тысяч ссылок.

1
Будьте более конкретны, чем просто «это терпит неудачу», это может быть одним из возможных инструментов. В качестве альтернативы вы можете использовать curl, менеджер загрузок или что-то еще. Да, вы можете автоматизировать это. Seth 5 лет назад 0
`JavaScript: предупреждение (document.lastModified)`? Akina 5 лет назад 0
Вы можете попробовать использовать `curl` и вывести в файл, а затем запускать` diff` между файлами каждый день. Чтобы автоматизировать размещение ваших ссылок в файле и использовать скрипт для чтения каждой строки как переменной. Затем просто переберите их все, получая исходные файлы. Затем вы можете просто сравнить файлы текущего дня с предыдущим и предупредить, как вам удобнее. Затем вы можете удалить исходные файлы предыдущего дня как своего рода очистку. Это своего рода минимальный подход внешнего инструмента. Помните, что Windows по умолчанию `curl` является псевдонимом powershell для другой команды, поэтому вам понадобится linux curl Gytis 5 лет назад 0

1 ответ на вопрос

1
RedGrittyBrick

Интересно, смогу ли я как-нибудь автоматизировать это?

Вряд ли это необходимо, но да, вы можете написать несколько простых сценариев.

ребята, вы знаете инструмент ... который бы облегчил такую ​​загрузку?

Wget, Curl, и т. д.

Вы можете поместить 1000 конкретных URL-адресов в текстовый файл, создать две директории, перейти в первый каталог и использовать инструмент, например, wgetс -iвозможностью прочитать список URL-адресов и получить их. Через месяц повторите это во втором каталоге, используйте diff, например, diff -r /directory1 /directory2чтобы найти какие-либо изменения.


Будьте осторожны при использовании рекурсивных опций, они могут перегружать сервер и блокировать вас или могут перегружать ваш компьютер.

Я бы попробовал сначала с небольшим набором URL (например, 2, затем 10, затем 1000).


Более дешевым вариантом может быть использование запросов HTTP HEAD и доверие к серверу, который знает, был ли изменен ресурс.

Видите запрос Wget HEAD?