2014-02-08 3 views
2

Я новичок в XML Path Language. Я хочу использовать инструмент, чтобы заставить XPath использовать скрипт для очистки содержимого.Как получить правильный XPath?

Например:

На http://econpy.pythonanywhere.com/ex/001.html Я хочу, чтобы получить имена всех покупателя.

Я пробовал Firebug и Chrome DevTools, но оба они, похоже, создают путь, который не работает для моих целей.

То есть, я получаю /html/body/div[2]/div, тогда как это должно быть //div[@title="buyer-name"]/text().

(Я использовал http://docs.python-guide.org/en/latest/scenarios/scrape/).

Любые предложения будут высоко оценены.

ответ

3

Существует расширение Firebug под названием FirePath, которое улучшает функции Firebug, связанные с XPath. Также в последнее время появилась новая функция Firebug, которая позволяет copy the minimal XPath.

Оба они создают пути на основе элементов с идентификаторами, поэтому я создал enhancement request for Firebug, чтобы разрешить то, о чем вы просите. И я также прокомментировал существующий feature request for FirePath, который нацелен на это.

+0

Отлично, вы внедрили относительное расширение xpath Sebastian! Я вижу, что это по-прежнему открытая проблема, есть ли способ установить ее в Firefox? Спасибо –

+0

На самом деле это был Якоб, который реализовал эту функцию в Firebug (для элементов с идентификатором). Открытая проблема относится к относительным XPaths на основе элементов * без * ID. Поскольку проблема все еще остается открытой, она пока недоступна в Firebug. Если вы хотите, чтобы эта функция была доступна, вы можете написать патч для [Firebug.next] (https://github.com/firebug/firebug.next). –

Смежные вопросы