@1ndrei

Как на вебстранице спарсить одинаковые элементы (возможно, через xpath или как-то по-другому)?

Бывает очень полезно спарсить одинаковые элементы на странице: номера телефонов, какие-то заголовки, еще что-то.
Это можно сделать через xpath. Или, например, через google spreadsheet через формулу importxml, которая работает с xpath.
Но через spreadsheet это не всегда удобно и возможно.
Есть ли какой-то плагин, который это делает.
Ввел xpath - он тебе тут же выдал все подходящие под запрос элементы.
Возможно, что-то похожее существует, но другими способами - через js как-то например.
Типа, getelements by id - и он тебе все эти элементы выдает в plain text.
  • Вопрос задан
  • 163 просмотра
Решения вопроса 1
@1ndrei Автор вопроса
Через селекторы:
z=''; $$('h3').forEach(function(i){z += i.innerText+'\n'}); copy(z)

Через xpath:
z=''; $x('//h3').forEach(function(i){z += i.innerText+'\n'}); copy(z)

Результат, в буфере аккуратный списочек того, чего нужно.
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
@zero-cool
frontend разработчик
Если я правильно понял но думаю можно обойтись просто javascript скриптом.

например вот этот код выводит в консоли, в текстовом формате элементы меню "Тостера"
document.querySelectorAll(".main-menu__link").forEach(function(i) { console.log(i.innerHTML.slice(-20)) })

Получили коллекцию html элементов, и для каждого элемента коллекции вызвали функцию колбек, которая выводит его содержимое (innerHTML) .

Естественно можно написать какой то универсальный скрипт; И может быть даже если необходимо оформить его в виде плагина
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы