Как использовать запросы xpath в PHPQuery? - PullRequest
2 голосов
/ 07 сентября 2011

Я ищу пример кода, как использовать xpath phpQuery . Я прочитал вики-страницы, но ничего не нашел. заранее спасибо.

Ответы [ 2 ]

1 голос
/ 08 января 2015

Таким образом, PHPQuery на самом деле имеет функцию с именем protected function getNodeXpath($oneNode = null, $namespace = null). Вы можете найти это довольно легко, если просто посмотрите в phpquery_onefile .

Если вы просто измените эту функцию protected на public, теперь вы можете использовать ее в своем коде. Вам просто нужно сделать что-то вроде этого: pq('button')->getNodeXpath().

Имейте в виду, что при этом возвращается массив, и для многих функций (например, php-webdriver ) потребуется строка xpath. Чтобы это исправить, просто взорвите массив, который вы получите обратно.

0 голосов
/ 07 сентября 2011

Сводная информация о проекте

phpQuery - это цепочечный API-интерфейс на основе объектной модели документов (DOM), управляемый селектором на стороне сервера, на основе jQuery JavaScript Library.

Поскольку XPath не является частью селекторов CSS3 и в документации нет ссылок, я бы сказал, что он не реализован.

Обновление

При просмотре их источника, он выглядит так, как будто обернул DOMDocument, и вы можете извлечь документы из массива phpQuery::$documents. Получив экземпляр DOMDocument, вы можете создать объект DOMXPath и выполнить к нему запросы.

...