El caso es que de una de las páginas que saco la información, tengo que sacar los resultados que hay en una estructura similar a esta:
Código PHP:
div class="main-content">
<div class="post">
<a href="http://miweb1/resultado1.php">
<img alt=""
class="attachment-post-thumbnail size-post-thumbnail wp-post-image"
sizes="(max-width: 150px) 100vw, 150px"
src="http://miweb1/resultado1.jpg">
</a>
<div class="bottom-block">
Resultado 1
</div>
<div class="date-block">
10/02/2018
</div>
</div>
<div class="post">
<a href="http://miweb1/resultado2.php">
<img alt=""
class="attachment-post-thumbnail size-post-thumbnail wp-post-image"
sizes="(max-width: 150px) 100vw, 150px"
src="http://miweb1/resultado2.jpg">
</a>
<div class="bottom-block">
Resultado 2
</div>
<div class="date-block">
13/02/2018
</div>
</div>
<div class="post">
<a href="http://miweb1/resultado3.php">
<img alt=""
class="attachment-post-thumbnail size-post-thumbnail wp-post-image"
sizes="(max-width: 150px) 100vw, 150px"
src="http://miweb1/resultado3.jpg">
</a>
<div class="bottom-block">
Resultado 3
</div>
<div class="date-block">
12/02/2018
</div>
</div>
<div class="post">
<a href="http://miweb1/resultado4.php">
<img alt=""
class="attachment-post-thumbnail size-post-thumbnail wp-post-image"
sizes="(max-width: 150px) 100vw, 150px"
src="http://miweb1/resultado4.jpg">
</a>
<div class="bottom-block">
Resultado 4
</div>
<div class="date-block">
15/02/2018
</div>
</div>
</div>
Código PHP:
<?php
function get_results_l1($keyword)
{
$url = "http://miweb1/?="$keyword);
$doc = new DOMDocument();
/*
* Debido a que loadHTMLFile no admite algunas etiquetas de HTML5, generando un warning, eliminamos mensaje
* de error en la siguiente linea con la @
* */
@$doc->loadHTML(file_get_contents($url));
$div_results = new DOMXPath($doc);
$elements = $div_results->query("//div[@class='post-resultado']");
echo "<br>Vardump de elements es:<br>";
var_dump($elements);
echo "<br><br>";
$l1_links = array();
$i = 0;
foreach ($elements as $element) {
echo "<br>$element actual $i es: <br>";
var_dump($element);
echo "<br><br>";
$enlaces = $element->getElementsByTagName("a");
foreach ($enlaces as $enlace) {
$l1_links[$i] = $enlace->getAttribute("href");
echo $i."-".$l1_links[$i]."<br>";
$i++;
}
}
echo "<br>Fin foreach<br>";
return $l1_links;
}
Código HTML:
Vardump de elements es: object(DOMNodeList)#15 (1) { ["length"]=> int(0) } Inicio el foreach Fin foreach
Sin embargo parece que no devuelve nada...
He comprobado la expresion en un XPATH TESTER ONLINE y si me devuelve los 4 elementos... pero sin embargo en mi web no devuelve nada...
Alguien podria orientarme un poco porque no me está devolviendo nada?
Saludos y gracias a todos!