Curl Parsear un html

  • Autor Autor Prospero
  • Fecha de inicio Fecha de inicio
Prospero

Prospero

Eta
Verificación en dos pasos activada
Hola amigos me dan una mano. necesito sacar el level de esta web .

PHP:
<?php
function level()
        {
            $url = 'https://web.mumemory.com/character/416c616e/MEMORY';
            // Iniciamos la funcion CURL
            $ch = curl_init();

            // Configuramos la funcion CURL

            curl_setopt($ch, CURLOPT_URL, $url);
            curl_setopt($ch, CURLOPT_HTTPHEADER,array("Accept-Lenguage: es-es,es"));
            curl_setopt($ch, CURLOPT_TIMEOUT,10);
            curl_setopt($ch, CURLOPT_FOLLOWLOCATION,1);
            curl_setopt($ch, CURLOPT_RETURNTRANSFER,1);
            curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);

            //Guarda el codigo fuente de la pagina visitada
            $html = curl_exec($ch);
            $error = curl_error($ch);
            curl_close($ch);


             // Parseamos el Codigo fuente
             preg_match_all('<tr class="main-tr">',$html ,$result);


            echo $result[49];
            
            echo "<br>";
            
            print_r($result);


            
            return $result;
        }


echo level();



?>

alguien me tira un centro no logro ni capturar ni por cerca.. no entiendo porque..

se que el valor esta en:

HTML:
<td style="width:50%;text-align: left;">400</td>

pero no logro traerlo

alguno me tira un centro? o donde leer un poco mas..
 
@Prospero Prueba asi!

PHP:
<?php
    
function level(){
    $url = 'https://web.mumemory.com/character/416c616e/MEMORY';
    $ch = curl_init();
    
    curl_setopt($ch, CURLOPT_URL, $url);
    curl_setopt($ch, CURLOPT_HTTPHEADER,array("Accept-Lenguage: es-es,es"));
    curl_setopt($ch, CURLOPT_TIMEOUT, 10);
    curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
    curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);

    $html = curl_exec($ch);
    $error = curl_error($ch);
    curl_close($ch);

    preg_match_all('|<td style="width:50%;text-align: left;">(.*)</td>|', $html, $result);

    return $result[0][5];
    
}

echo level();

?>
 
@Prospero Prueba asi!

PHP:
<?php
   
function level(){
    $url = 'https://web.mumemory.com/character/416c616e/MEMORY';
    $ch = curl_init();
   
    curl_setopt($ch, CURLOPT_URL, $url);
    curl_setopt($ch, CURLOPT_HTTPHEADER,array("Accept-Lenguage: es-es,es"));
    curl_setopt($ch, CURLOPT_TIMEOUT, 10);
    curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
    curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);

    $html = curl_exec($ch);
    $error = curl_error($ch);
    curl_close($ch);

    preg_match_all('|<td style="width:50%;text-align: left;">(.*)</td>|', $html, $result);

    return $result[0][5];
   
}

echo level();

?>


maldito genio!!! @YeltsinReyes , si es mucha molestias como hiciste? como sabes que todos esos caracteres era para llegar ahi? gracias gracias!!
 
PHP:
<?php
$html = file_get_contents("https://web.mumemory.com/character/4564756172646f/MEMORY");
preg_match_all("/<td style=\"width:50%;text-align: left;\">([0-9]{3})<\/td>/i", $html, $matches);
print_r($matches);
?>

No necesitas mucho, con esto lo obtienes.
 

Temas similares

Prospero
Respuestas
11
Visitas
768
Gordon Olson
G
Atrás
Arriba