Парсинг нескольких параметров с распределением результатов в файлы

  • Автор темы Автор темы komyak
  • Дата начала Дата начала

komyak

A-Parser Pro License
A-Parser Pro
Есть база сайтов на WP. Прогоняю её на поиск нужных параметров в коде и в процессе возникает потребность в поиске новых значений в коде, соответственно новый парсинг занимает значительное время.
Возможно ли как то упростить это.
Пример сайта: _https://ru.wordpress.org
Задача:
1. Заходим на сайт и парсим все ссылки по N-уровню вложенности.
2. Парсим все ссылки из п.1
3. Ходим по этим ссылкам и собираем значения:
а) <meta name="generator" content="WordPress 5.4-alpha-47202" /> -> 5.4-alpha-47202
соответственно нужна версия WP. Если мета тега generator нет, то ставим значение Unknown и сохраняем в соответствующий файл.
б) Смотрим внутренние ссылки (полученные в п.2) на наличие названий используемых плагинов:
Например по ссылке : м видим наличие плагинов:
https://ru.wordpress.org/support/wp...mplates/default/css/bbpress.min.css?ver=2.6.4 -> bbpress
https://ru.wordpress.org/support/wp...css/helphub-contributors-public.css?ver=1.0.0 -> support-helphub
Сохраняем этот сайт в файл с названием соответсвующего плагина.
Один и тот же сайт может быть сохранён в нескольких файлах, по значению generator и названиям плагинов.

Поможете разобрать процесс или в платную поддержку?
 
Не совсем понятна задача (в частности 2-й пункт), но в целом скорее всего решается пресетом на базе HTML::LinkExtractor HTML::LinkExtractor с парсингом в глубину. В этом же пресете регулярными выражениями собираете нужные данные и выводите в результат.
Только не получится выводить названия плагинов так, как вы описали. Возможно стоит пересмотреть структуру результата, например делать таблицу, где в первом столбике будут ссылки, во втором - значение generator, а в третьем - названия плагинов.
 
Не совсем понятна задача (в частности 2-й пункт)
На входе ссылка с которой парсим сайт на N-уровень вложенности. Например парсим 5 ссылок и потом ходим по каждой и спаршиваем названия плагинов на каждой.(на разных страницах сайта могут быть разные плагины)
 
Назад
Верх