Foros del Web » Programando para Internet » PHP »

a partir de una url, leer el valor de <title> de la pagina

Estas en el tema de a partir de una url, leer el valor de <title> de la pagina en el foro de PHP en Foros del Web. Se puede? he estado buscando y no veo cómo ??...
  #1 (permalink)  
Antiguo 16/06/2009, 16:00
 
Fecha de Ingreso: febrero-2009
Mensajes: 580
Antigüedad: 15 años, 9 meses
Puntos: 13
a partir de una url, leer el valor de <title> de la pagina

Se puede? he estado buscando y no veo cómo ??
__________________
¿ya conoces la red social de cocina? descubre y comparte recetas de cocina
TONIWEB, un programador web freelance
  #2 (permalink)  
Antiguo 16/06/2009, 18:10
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años, 7 meses
Puntos: 2534
Respuesta: a partir de una url, leer el valor de <title> de la pagina

como no??

en el foro es muy claro, yo he visto bastante...

primero lees la URL con file_get_contents()

luego usas una expresión regular para extraer el dato, bingo!


busca en el foro, por favor...
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #3 (permalink)  
Antiguo 21/06/2009, 05:02
 
Fecha de Ingreso: febrero-2009
Mensajes: 580
Antigüedad: 15 años, 9 meses
Puntos: 13
Respuesta: a partir de una url, leer el valor de <title> de la pagina

Bueno, había buscado eeeh.. pero añadiendo 'expresiones regulares' he encontrado:

Código PHP:
<?php

function get_links($url){
$value file_get_contents($url);
preg_match_all('/<a [^>]*href=("[^"]*"|\'[^\']*\')[^>]*>/i'$value$match);
$urls =array_map(create_function('$a','return substr($a, 1, -1);'),$match[1]);
$total=count($urls);
//Comprobar que no estén repetidos
for($i=0;$i<$total;$i++){
echo 
$urls[$i].'<br>';
}
}

$url "http://www.laurlquequieras.com";
get_links($url);

?>

debo cambiar 'a' por 'title' y ya?
__________________
¿ya conoces la red social de cocina? descubre y comparte recetas de cocina
TONIWEB, un programador web freelance

Última edición por Bam_Margera; 21/06/2009 a las 05:49
  #4 (permalink)  
Antiguo 21/06/2009, 05:12
 
Fecha de Ingreso: marzo-2009
Ubicación: yokze
Mensajes: 177
Antigüedad: 15 años, 8 meses
Puntos: 3
Respuesta: a partir de una url, leer el valor de <title> de la pagina

Nooo, hay que cambiar mas cosas xD
Dejame un rato que mire como va la funcion esta de preg_match_all xq nose mu bien como va =(

salu2
  #5 (permalink)  
Antiguo 21/06/2009, 07:00
 
Fecha de Ingreso: febrero-2009
Mensajes: 580
Antigüedad: 15 años, 9 meses
Puntos: 13
Respuesta: a partir de una url, leer el valor de <title> de la pagina

Gracias! yo de momento he probado

Código PHP:
        <?php

function get_links($url){
$value file_get_contents($url);
preg_match_all('/<a [^>]*href=("[^"]*"|\'[^\']*\')[^>]*>/i'$value$match);
$urls =array_map(create_function('$a','return substr($a, 1, -1);'),$match[1]);
$total=count($urls);
//Comprobar que no estén repetidos
echo 'inicio<br>';
for(
$i=0;$i<$total;$i++){
echo 
$urls[$i].'<br>';

}
echo 
'fin<br>';
}

$url "http://www.elrellano.es";
get_links($url);

?>
I solo me imprime 'inicio' y 'fin'..... :(
__________________
¿ya conoces la red social de cocina? descubre y comparte recetas de cocina
TONIWEB, un programador web freelance
  #6 (permalink)  
Antiguo 21/06/2009, 07:06
 
Fecha de Ingreso: febrero-2009
Mensajes: 580
Antigüedad: 15 años, 9 meses
Puntos: 13
Respuesta: a partir de una url, leer el valor de <title> de la pagina

tb he encontrado este

Código PHP:
<?
$url 
"http://www.google.com";
$file file($url);
$file implode("",$file);

if(
preg_match("/<title>(.+)<\/title>/i",$file,$m))
    print 
"The title of $url is <b>$m[1]";
else
    print 
"The pagev".$url." doesn't have a title tag"?>
pero también me imprime siempre el caso error...
__________________
¿ya conoces la red social de cocina? descubre y comparte recetas de cocina
TONIWEB, un programador web freelance
  #7 (permalink)  
Antiguo 21/06/2009, 07:50
Avatar de jaao_death  
Fecha de Ingreso: abril-2009
Ubicación: Murcia/españa
Mensajes: 229
Antigüedad: 15 años, 7 meses
Puntos: 6
Respuesta: a partir de una url, leer el valor de <title> de la pagina

Código PHP:
  1 <?php
  2 $url 
"http://www.google.com";
  
3 $file file_get_contents($url);
  

  5 
if(preg_match("/<title>(.+)<\/title>/i",$file,$m))
  
6         print "The title of $url is <b>$m[1]</b>";
  
else    
  
8         print "The pagev".$url." doesn't have a title tag";
  
9 ?>
Con el último post casi le das a la solución, este código ya ha sido testado y funciona perfectamente, si deseas consultar algo más no dudes en comunicarmelo...
__________________
Mucha seguridad nunca es suficiente.... Por una red segura
El señor ilustre obscurece nuestras mentes
Usas Linux? http://www.dudalibre.com/gnulinuxcounter
  #8 (permalink)  
Antiguo 21/06/2009, 08:00
 
Fecha de Ingreso: febrero-2009
Mensajes: 580
Antigüedad: 15 años, 9 meses
Puntos: 13
Respuesta: a partir de una url, leer el valor de <title> de la pagina

vaya, muchas gracias! pero siempre me entra en la segunda condición... :(

http://keepyourlinks.com/pre/url.php

qué podría probar?
__________________
¿ya conoces la red social de cocina? descubre y comparte recetas de cocina
TONIWEB, un programador web freelance

Última edición por Bam_Margera; 21/06/2009 a las 08:39
  #9 (permalink)  
Antiguo 21/06/2009, 09:32
Avatar de jaao_death  
Fecha de Ingreso: abril-2009
Ubicación: Murcia/españa
Mensajes: 229
Antigüedad: 15 años, 7 meses
Puntos: 6
Respuesta: a partir de una url, leer el valor de <title> de la pagina

claro! ya se cuál es tu problema, para que php cargue los datos de un servidor externo la configuración en php.ini debe activar esta opción, pero esto consume muchos recursos y muchos hostings lo desactivan, con lo cuál será imposible que tengas acceso a esta info. por lo menos por este método.
__________________
Mucha seguridad nunca es suficiente.... Por una red segura
El señor ilustre obscurece nuestras mentes
Usas Linux? http://www.dudalibre.com/gnulinuxcounter
  #10 (permalink)  
Antiguo 21/06/2009, 09:39
 
Fecha de Ingreso: febrero-2009
Mensajes: 580
Antigüedad: 15 años, 9 meses
Puntos: 13
Respuesta: a partir de una url, leer el valor de <title> de la pagina

aháaaa.. algúna idea por dónde tirar?
__________________
¿ya conoces la red social de cocina? descubre y comparte recetas de cocina
TONIWEB, un programador web freelance
  #11 (permalink)  
Antiguo 21/06/2009, 09:45
Avatar de jaao_death  
Fecha de Ingreso: abril-2009
Ubicación: Murcia/españa
Mensajes: 229
Antigüedad: 15 años, 7 meses
Puntos: 6
Respuesta: a partir de una url, leer el valor de <title> de la pagina

habla con el del hosting para que te permita hacer esto, o cambia de hosting...
__________________
Mucha seguridad nunca es suficiente.... Por una red segura
El señor ilustre obscurece nuestras mentes
Usas Linux? http://www.dudalibre.com/gnulinuxcounter
  #12 (permalink)  
Antiguo 21/06/2009, 09:49
Avatar de jaao_death  
Fecha de Ingreso: abril-2009
Ubicación: Murcia/españa
Mensajes: 229
Antigüedad: 15 años, 7 meses
Puntos: 6
Respuesta: a partir de una url, leer el valor de <title> de la pagina

ah! no, se me ocurre algo, aprovéchate de las bondades del cliente... utiliza ajax!!!, puedes hacerlo de dos formas, que el cliente cargue la página y la procese hasta encontrar <title>, que podría resultar algo lento, o que cargues la página desde el cliente, la envíes a tu servidor y la proceses según necesites.
__________________
Mucha seguridad nunca es suficiente.... Por una red segura
El señor ilustre obscurece nuestras mentes
Usas Linux? http://www.dudalibre.com/gnulinuxcounter
  #13 (permalink)  
Antiguo 21/06/2009, 09:55
 
Fecha de Ingreso: febrero-2009
Mensajes: 580
Antigüedad: 15 años, 9 meses
Puntos: 13
Respuesta: a partir de una url, leer el valor de <title> de la pagina

Vale la segunda parece buena opción, pero justo estoy familiarizandome con ajax. Tienes un link con info por ahí? :P

muchas gracais!!!!
__________________
¿ya conoces la red social de cocina? descubre y comparte recetas de cocina
TONIWEB, un programador web freelance
  #14 (permalink)  
Antiguo 21/06/2009, 10:06
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 18 años, 5 meses
Puntos: 2135
Respuesta: a partir de una url, leer el valor de <title> de la pagina

Con AJAX no lo vas a poder realizar, AJAX tiene la restricción de que solo funciona en el mismo dominio.

Si no tienes activado el allow_url_fopen en tu php.ini no vas a poder usar file_get_contents, vas a tener que usar sockets (con fsockopen) para hacer un request HTTP a la pagina externa.

Saludos.
  #15 (permalink)  
Antiguo 21/06/2009, 10:07
Avatar de jaao_death  
Fecha de Ingreso: abril-2009
Ubicación: Murcia/españa
Mensajes: 229
Antigüedad: 15 años, 7 meses
Puntos: 6
Respuesta: a partir de una url, leer el valor de <title> de la pagina

http://www.librosweb.es/ajax/
http://www.wikilearning.com/tutorial...t_+_xml/6455-1

sólo tengo estos dos, espero que te sirvan
__________________
Mucha seguridad nunca es suficiente.... Por una red segura
El señor ilustre obscurece nuestras mentes
Usas Linux? http://www.dudalibre.com/gnulinuxcounter
  #16 (permalink)  
Antiguo 21/06/2009, 10:26
 
Fecha de Ingreso: febrero-2009
Mensajes: 580
Antigüedad: 15 años, 9 meses
Puntos: 13
Respuesta: a partir de una url, leer el valor de <title> de la pagina

Gracias! aunque ajaxx lo estoy ya manejando en mi web... voy a ver que averiguo con lo que me habeis pasado!

:D
__________________
¿ya conoces la red social de cocina? descubre y comparte recetas de cocina
TONIWEB, un programador web freelance
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 22:33.