как использовать xPath для следования

Я получил данные div «rso» в php Dom с помощью getElementById (‘rso’), но php не позволяет получить «ClassName», мне нужно, чтобы все «дитя» <div class =srg> а затем пометьте «Href» внутри этого.

<div id=”rso”>
<div class= “_Nid”>
<div class = “srg”>
<div class =”g”>
<div class=”rc”>
<h3 class = “r”>
<a href >
</h3>
</div>
</div>
<div class =”g”>...</div>
<div class =”g”>...</div>
<div class =”g”>...</div>
</div>
</div>
</div>

Подскажите, пожалуйста, как это можно сделать. или какой xPath будет использоваться, если он может работать здесь.

0

Решение

<?php
$html = <<<HTML
<div id="rso">
<div class="_Nid">
<div class="srg">
<div class="g">
<div class="rc">
<h3 class="r">
<a href="http://my.site.com/lol.txt" >
</h3>
<h3 class="r">
<a href="http://my.site.com/lol2.txt" >
</h3>
<h3 class="r">
<a href="http://my.site.com/lol23.txt" >
</h3>
</div>
</div>
<div class="g">...</div>
<div class="g">...</div>
<div class="g">...</div>
</div>
</div>
</div>
HTML;

$dom = new DOMDocument;
$dom->loadHTML($html);
$domxpath = new DOMXPath($dom);
$filtered =  $domxpath->query('//div[@class="srg"]//a/@href');
foreach ($filtered as $item) {
echo "$item->value\n";
}
1

Другие решения

Попробуй ниже XPath:

//div[@class="srg"]//a/@href
0

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector