Подтвердить что ты не робот

Библиотека CSS-селектора CSS?

Есть ли класс/библиотека PHP, который позволит мне запрашивать документ XHTML с помощью селекторов CSS? Мне нужно очистить некоторые страницы для данных, которые очень легко доступны, если я могу каким-то образом использовать селектор CSS (jQuery испортил мне!). Любые идеи?

4b9b3361

Ответ 2

XPath - довольно стандартный способ доступа к узлам XML (и XHTML) и обеспечивает гораздо большую точность, чем CSS.

Ответ 5

Для jQuery наиболее интересными могут быть порт jQuery для PHP, который phpQuery. Портируются практически все разделы библиотеки. Кроме того, он содержит плагин WebBrowser, который может использоваться для веб-скрипинга всего пути/процессов сайта (например, доступ к данным, доступным после входа в систему). Он просто имитирует веб-браузер на сервере (события и файлы cookie тоже). Последние версии имеют экспериментальную поддержку XML пространств имен и CSS3 "|" селектор.

Ответ 6

В итоге я использовал PHP Query Lite, это очень просто и имеет все, что мне нужно.

Ответ 7

Для анализа документа я использую DOM. Это может легко решить вашу проблему, если вы знаете имя тега (в этом примере "div" ):

 $doc = new DOMDocument();
 $doc->loadHTML($html);

 $elements = $doc->getElementsByTagName("div");
 foreach ($elements as $e){
  if ($e->getAttribute("class")!="someclass") continue;

  //its a div.classname
 }

Не уверен, что DOM позволяет сразу получить все элементы документа... вам может потребоваться обход дерева.

Ответ 8

Я написал свой, основанный на движке селектора CSS Mootools http://selectors.svn.exyks.org/. он полагается на способность расширения simplexml (так что он доступен только для чтения)