Удобный генератор XPath - Пишите XPath в разы быстрее

Igorii

Client
Регистрация
21.02.2015
Сообщения
375
Реакции
311
Баллы
63
Всем привет! Уже пару месяцев успешно пользуюсь приложением для составления путей Xpath, которое навайбкодил с нейросетями. Получился удобный инструмент для создания, генерации и редактирования XPath-запросов. Думаю, он будет полезен как новичкам, так и опытным разработчикам.
Сама программа выполнена в виде HTML-файла, что позволяет пользоваться ею прямо в браузере.
Хотя программа и позволяет автоматически генерировать несложные пути, тем не менее, хотя бы начальные навыки понимания XPath вы должны иметь.

Интерфейс приложения разделен на несколько основных частей:
Поле Контекст (HTML код или данные) — сюда вставляется HTML-фрагмент элемента, для которого хотите получить XPath. Фрагмент кода обязательно должен содержать открывающую и закрывающую скобки. Пример:
<a href="/ru/products/zennoposter/" class="nav-link products-nav-link" data-gtm-id="go-to-zennoposter-page" data-gtm-position="header">

141374

Поле «XPath путь» — здесь, после нажатия кнопки Генерировать Xpath, появляются сгенерированные XPath-выражения. Если подходящий путь не сгенерировался автоматически, вы можете доработать наиболее подходящее выражение вручную, выбирая кнопкой мыши, из блоков ниже, нужные вам оси, теги, предикаты.

141375

Так же, над полем Контекст (HTML код или данные), под спойлером, есть вспомогательное поле Дополнительные данные (кастомные сниппеты, URL, описание), которое можно использовать, для форматирования, редактирования html, каких-то заметок, вставки и редактирования готовых путей и т.д. Поле так же поддерживает вставку данных из трёх блоков внизу.

141376

Рабочие поля содержат вспомогательные кнопки:
Форматировать HTML – Если, скопированный из DevTools, html код идёт сплошной простынёй текста, эта кнопка приведёт его в отформатированный вид.
Очистить не выделенное – выделяете нужный вам фрагмент, всё остальное удалится из поля по нажатию кнопки.
Копировать в контекст – скопирует выделенный фрагмент кода в поле Контекст (HTML код или данные)
Копировать всё
и Копировать выделенное – соответственно.

Как я, обычно использую приложение:
Копирую нужный элемент из DevTools, вставляю в поле Дополнительные данные (кастомные сниппеты, URL, описание), форматирую html если надо и копирую нужный фрагмент кода в поле Контекст (HTML код или данные), нажимаю Генерировать Xpath. Смотрю, что сгенерировалось. Если есть нужный мне путь, тестирую его в DevTools, если нужного пути нет, выбираю наиболее подходящий и дорабатываю его кнопками из трёх нижних блоков.

Видео работы:

Возможно, из описания не всё понятно, но потестировав приложение, быстро разберётесь.
Так как приложение является обычным html файлом, вы можете доработать его под себя самостоятельно или с помощью нейросетей.
 

Вложения

Последнее редактирование модератором:
Задумка хороша. А так же музыка) Только в обычном DevTools тоже есть возможность скопировать готовый и рабочий xpath. Да и в зенке поиском по элементу несколько вариантов Xpath можно получить. И еще более быстрым способом.... Так что этот модуль - даже некоторое усложнение.
А вот если модуль научится генерировать правильный Xpath для ДИМАМИЧЕСКИХ параметров - это реально топ. Так делать стандартные средства не умеют
 
  • Спасибо
Реакции: Igorii
е работает оно) Ничего не выводить

1776710454509.png
Если Alt + Click не работает, то у тебя занят хот-кей. Используй иконку выбора элемента в панельке. Кстати, хорошая идея - дать возможность выбрать хоткей в настройках!
 
Последнее редактирование:
Посмотреть вложение 141412
Если Alt + Click не работает, то у тебя занят хот-кей. Используй иконку выбора элемента в панельке. Кстати, хорошая идея - дать возможность выбрать хоткей в настройках!
Так и надо, что оно находит множественные варианты?
 
Так и надо, что оно находит множественные варианты?
Ну вроде в описание было что находит разные варианты.
@Divisor , @Iv1
А вообще, считаю плохим тоном упоминать в конкурсной статье чужие темы, и уж тем более обсуждать их:av:
 
  • Спасибо
Реакции: Dmitriy_Zenno
А вообще, считаю плохим тоном упоминать в конкурсной статье чужие темы, и уж тем более обсуждать их:av:
Приношу глубочайшие извинения автору. Просто хотел указать, что можно было просмотреть форум, прежде чем на конкурс выдавать решение, которое уже обсуждалось не так давно. Правда, стыдно.
 
  • Спасибо
Реакции: Dr.Pipetka
я просто сделал gem бота(по сути пару кликов в веб интервейсе gemini) в который ты просто кидаешь html и он тебе выдаёт несколько вариантов xpath, прямо с зенки с девтулс копи пэйст. сейчас правда сам гем бот этот куда то пропал сам по себе но я его вернул обратно)

лишний раз нашпиговывать браузер какими то плагинами нет желания, особенно с точки зрения информационной безопасности.
 
Проголосовал. Было интересно.
 
  • Спасибо
Реакции: Igorii и Dmitriy_Zenno

Кто просматривает тему: (Всего: 0, Пользователи: 0, Гости: 0)