Articles of xpath

Запрос xpath для результата запроса xpath

например, у нас есть этот xml: <body> <a> <b> <c>hello</c> <c>world</c> </b> </a> <a> <b> <c>another hello</c> <c>world</c> </b> </a> </body> по запросу Xpath мы можем найти все «B» -теги. Но тогда нам нужно найти все «C» -таг в каждом найденном «B» -tag. Я написал этот код: $dom = new DOMDocument(); $dom->loadXML($xml); $xpath = new […]

Итерирование результата xpath SimpleXml

Я использую SimpleXMLElement для чтения xml, возвращаемого с удаленного сервера. Затем результаты анализируются с помощью xpath следующим образом: $result = <<<XML <DataImport2Result xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="http://www.xxx.xxx/Services/DataImport2"> <Number /> <Blocks> <Block> <Code>Fbf</Code> <Fields> <Field> <Code>FinnsIFbf</Code> <Value>1</Value> </Field> </Fields> </Block> </Blocks> </DataImport2Result> XML; $xml = new SimpleXMLElement($result); $xml->registerXPathNamespace("data", array_pop($xml->getNamespaces())); foreach($xml->xpath("//data:Code[.='Fbf']/..") as $block) { foreach($block[0]->Fields->Field as $field) { echo […]

xpath и самозакрывающиеся <br/>

Может ли кто-нибудь сказать мне, как я могу получить доступ к тексту после <br /> в следующем? <li> <span class="title">Size</span> <p>Ladies<br />Case Diameter: 27.0 mm</p> </li> По какой-то причине я не могу пройти мимо этого … однако, я могу получить что-то перед ним (дамы) Благодаря!

Разбор CDATA из SOAP-ответа с PHP

Я пытаюсь разобрать CDATA из ответа SOAP с помощью SimpleXML и Xpath. Я получаю вывод, который я ищу, но возвращаемый результат – это одна непрерывная строка данных без разделителей, что позволило бы мне разобрать. Я ценю любую помощь! Вот ответ SOAP, содержащий CDATA, который мне нужно проанализировать: <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"> <soapenv:Body> <ns1:getIPServiceDataResponse xmlns:ns1="http://ws.icontent.idefense.com/V3/2"> <ns1:return xsi:type="ns1:IPServiceDataResponse" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> […]

Запрос XPATH с одиночной цитатой

У кого-нибудь есть идеи, как это решить? Одиночная цитата бросает меня за цикл. $nodes = $xml->xpath("//item[contains(@catalog,'Billy's Blogs')]/title"); Я пытался избежать этого различными способами, все ошибки бросания: $nodes = $xml->xpath("//item[contains(@catalog,'Billy\'s Blogs')]/title"); $nodes = $xml->xpath("//item[contains(@catalog,'Billy&apos;s Blogs')]/title");

Почему PHP XPath не находит элементы таблицы, хотя Firefox показывает, что они существуют?

Я пытаюсь вытащить точный стол во время «царапины в Интернете». Использовал cURL, чтобы вытащить страницу в $ html, что преуспевает. Использовал Firebug, чтобы получить точный XPATH для таблицы. Код следует: $dom = new DOMDocument($html); $dom->loadHTML($html); $xpath = new DOMXpath($dom); $summary = $xpath->evaluate('/html/body/table[5]/tbody/tr/td[3]/table/tbody/tr[8]/td/table'); echo "Summary Length: " . $summary->length; При выполнении длина $ summary-> всегда равна […]

Загрузка файла KML в mysql / xpath и x quires

hello im сталкивается с несколькими проблемами при загрузке большого файла kml, из которого я первоначально использовал холодный синтез, но он просто не справился с большими файлами xml / kml поэтому я думал, что я даю ему bash, используя php, я довольно новичок в php и coldfusion поэтому вы можете получить файл kmz, который работает с […]

XPath для рекурсивного удаления пустых узлов DOM?

Я пытаюсь найти способ очистки пустых элементов DOM из источника HTML, например: <div class="empty"> <div>&nbsp;</div> <div></div> </div> <a href="http://example.com">good</a> <div> <p></p> </div> <br> <img src="http://example.com/logo.png" /> <div></div> Однако я не хочу наносить ущерб действительным элементам или разрыву строк. Поэтому результат должен быть примерно таким: <a href="http://example.com">good</a> <br> <img src="http://example.com/logo.png" /> До сих пор я пробовал […]

php xpath с текстом () и SimpleXMLElement-> xpath не соответствует ожидаемым результатам xpath

Я пытаюсь получить все текстовые узлы / td / span. Я пытаюсь использовать xpath / td / span / text () Проблема в том, что он возвращает ВСЕ текстовые узлы для каждого текстового элемента (здесь два, «193» и «120», он возвращает «193120» дважды, вместо 193 и 120 в отдельных элементах). Я стараюсь точно такой же […]

Как очистить первый абзац от страницы википедии?

Скажем, я хочу захватить первый абзац на этой странице википедии . Как получить основной текст между полем заголовка и содержимого с помощью XPath или DOM и PHP или чего-то подобного? Есть ли для этого php-библиотека? Я не хочу использовать api, потому что он немного сложный. Примечание. Мне просто нужно добавить виджет под моими страницами, который […]