
Я люблю использовать Xpath. Поэтому я собрал список элементов, которые вы можете извлечь, используя XPath.
Заголовки
По умолчанию Screaming Frog собирает только h1 и h2, но если вы хотите собрать h3, используйте код XPath:
//h3
Полученные данные:
Вы можете собрать только первый h3, особенно если их много на странице:
/descendant::h3[1]
Чтобы собрать первые 10 h3 на странице, используйте:
/descendant::h3[position() >= 0 and position() <= 10]
Для подсчета количества тегов h3 на странице:
count(//h3)
В этом случае «Extract Inner HTML» в крайнем правом раскрывающемся меню необходимо изменить на «Function Value», чтобы это выражение работало правильно:
Hreflang
Следующий Xpath в сочетании с Extract HTML Element соберет содержимое всех элементов hreflang:
//*[@hreflang]
Этот код будет собирать весь элемент HTML, со ссылкой и значением hreflang:
Возможно, вам нужны только значения hreflang (например, ru-RU), вы можете указать атрибут с помощью @hreflang:
//*[@hreflang]/@hreflang
Schema
Вы можете собирать различные типы схем на странице:
//*[@itemtype]/@itemtype
Для правил «itemprop» вы можете использовать аналогичный XPath:
//*[@itemprop]/@itemprop
Социальные мета-теги (Open Graph Tags & Twitter Cards)
Вы можете извлечь социальные мета-теги, такие как теги Facebook Open Graph, данные учетной записи или Twitter-карты:
//meta[starts-with(@property, 'og:title')]/@content
//meta[starts-with(@property, 'og:description')]/@content
//meta[starts-with(@property, 'og:type')]/@content
//meta[starts-with(@property, 'og:site_name')]/@content
//meta[starts-with(@property, 'og:image')]/@content
//meta[starts-with(@property, 'og:url')]/@content
//meta[starts-with(@property, 'fb:page_id')]/@content
//meta[starts-with(@property, 'fb:admins')]/@content
//meta[starts-with(@property, 'twitter:title')]/@content
//meta[starts-with(@property, 'twitter:description')]/@content
//meta[starts-with(@property, 'twitter:account_id')]/@content
//meta[starts-with(@property, 'twitter:card')]/@content
//meta[starts-with(@property, 'twitter:image:src')]/@content
//meta[starts-with(@property, 'twitter:creator')]/@content
Адрес электронной почты
Хотите собрать адреса электронной почты с вашего сайта или других веб-сайтов? Пожалуйста:
//a[starts-with(@href, 'mailto')]
С моего сайта код вернет один адрес электронной почты, который находится только на одной странице:
Iframes
//iframe/@src
Полученные данные:

Извлекать только те фреймы, в которые вставлено видео с YouTube:
//iframe[contains(@src ,'www.youtube.com/embed/')]
Извлечение только URL первого iframe, найденного на странице:
(//iframe/@src)[1]
AMP URL
//head/link[@rel='amphtml']/@href
Полученные данные:

Извлечение ссылок из статьи
Следующий XPath запрос будет извлекать ссылки только из основы статьи https://politay.pro/seo-dlya-wordpress/, где содержимое блога содержится в классе 'entry-content'.
//div[@class="entry-content"]//a - получит якорный текст с «Extract Inner HTML»
//div[@class="main-blog--posts_single--inside"]//a/@href - получит URL с «Extract Inner HTML»
//div[@class="main-blog--posts_single--inside"]//a - получит полный код ссылки с «Extract HTML Element»
Извлечение ссылок по анкору
Чтобы извлечь все ссылки с анкором «Политай»:
//a[contains(.,'Политай')]/@href
Этот код чувствителен к регистру, поэтому, если «POLITAY» иногда является «politay», вам придется сделать следующее:
//a[contains(translate(., 'ABCDEFGHIJKLMNOPQRSTUVWXYZ', 'abcdefghijklmnopqrstuvwxyz'),'politay')]/@href
kirill
21.04.2019Приветствую! Может подскажете каким XPath спарсить фото: https://optnow.ru/products/chehol-knizhka-smart-case-dlya-ipad-air-2%C2%A0olivkovyj
Vladislav
22.04.2019Вот так - //figure/img, после чего через автозамену добавить домен
Алексей
21.08.2020404 выдает скриншот(
Vladislav
21.08.2020Там был код xpath - //figure/img. Обновил коммент)
Пишите в телегу, если помочь нужно)
Виктор
03.05.2019Здравствуйте! Подскажите, как можно посчитать сумму определенных классов (class="executors-block-name") при помощи "Function Value"?
Vladislav
07.05.2019Напишите в телегу, разберемся)
Николай
29.07.2019Спасибо! Ваш пример очень помог и облегчил работу в несколько раз. Вообще не знал, что есть такая функция у Frog-а, если честно. Два часа выгружал вручную, подумал, что можно как-то автоматизировать, наткнулся на эту статью, так автор еще и в ЛС отвечает по конструктиву. Еще раз огромное спасибо
Анатолий
28.11.2019Также по фото, как спарсить если нет id?
https://market.starateli.ru/products/shpatlevki/shpatlevka-poliart/
Пробовал разные варианты с форумов + ваш вариант - не помогло http://prntscr.com/q3drim .
Vladislav
29.11.2019Попробуйте - //div[1]/div/div/div/div/img
Пишите в телегу, если не выйдет
Виталий
27.01.2020Большое спасибо Владиславу за личную помощь в решение моей задачи по XPath. Потратил на меня в телеграмме около 2 часов, чтобы помочь решить задание. Спасибо большое, жму руку и желаю успехов тебе и блогу 🙂
Илья
17.04.2020Здравствуйте, подскажите можно как-то обойти защиту скрипта на email ?
https://www.metalinfo.ru/ru/directory/18878
Vladislav
18.04.2020Там никакой защиты нет) просто парсите в режиме JS
Антон
05.04.2021Добрый день.
Подскажите а есть ли вариант когда ищем определенный урл по списку страниц?
Т.е. загружаем список страниц в режиме list и нужно найти все ссылки на домен и выгрузить их урлы и анкоры.
Vladislav
06.04.2021Здравствуйте, да можно)
Config - Custom - Search
Серьваньга
28.05.2021PowerShell религия не позволяет использовать?