Есть ли способ сделать скриншот каждой страницы на сайте? - PullRequest
0 голосов
/ 07 июня 2018

У нас есть несколько устаревших сайтов, которые проходят обновление.Было бы полезно иметь возможность делать скриншоты на каждой странице, а затем md5 суммировать результаты для обоих доменов, а затем проверять, соответствует ли все, что отображает, 100%.

Я не уверен, как это сделать - мы посмотрелина cheerio, который будет сканировать сайт, но не сможет сделать снимок экрана, и ночной дозор, который может делать снимки экрана, но не сканировать сайт.У кого-нибудь есть опыт в этом деле?

Ответы [ 2 ]

0 голосов
/ 07 июня 2018

Простым решением является использование Chrome в режиме без головы , которым также можно управлять многими модулями Node, такими как Puppeteer .

Взято со страницы разработчиков Google:

chrome --headless --disable-gpu --screenshot https://www.chromestatus.com/

Что касается сканирования, вы можете использовать смесь Cheerio и Puppeteer, чтобы сканировать ссылки и делать скриншоты.В качестве альтернативы вы можете найти какой-то инструмент, который позволяет экспортировать карту сайта ( пример ) со всеми URL-адресами веб-сайта, на этом этапе должно быть легко пройти через них и сделать скриншот каждого из них.

0 голосов
/ 07 июня 2018

Вы можете использовать StormCrawler с Selenium и написать собственный NavigationFilter, чтобы сделать снимок экрана и сохранить его md5 в метаданных документа.См. tutorial для ознакомления с SC + Selenium.

Следующим шагом может быть написание пользовательского индексатора и выгрузка URL-адресов с md5 в базу данных или файл.Наконец, вы должны сделать то же самое для более новой версии сайта и сравнить содержимое файлов или строк в таблице.

...