Foros del Web » Programando para Internet » PHP »

extraer datos con php

Estas en el tema de extraer datos con php en el foro de PHP en Foros del Web. a ver que tal amigos, es un placer andar aqui dos dias seguidos sin dormir jajaja bueno al grano veamos, quiero saber si se puede ...
  #1 (permalink)  
Antiguo 27/12/2009, 22:16
Avatar de memoadian
Colaborador
 
Fecha de Ingreso: junio-2009
Ubicación: <?php echo 'México'?>
Mensajes: 3.696
Antigüedad: 14 años, 10 meses
Puntos: 641
extraer datos con php

a ver que tal amigos, es un placer andar aqui dos dias seguidos sin dormir jajaja

bueno al grano veamos, quiero saber si se puede extraer algun dato en específico de una página.

por ejemplo

1) Defino el url que quiero chequear
Código PHP:
Ver original
  1. $url = "http://www.search1web.com/link.htm";

2) Aplico la función show_source($url):
Código PHP:
Ver original
  1. show_source ( $url );
  2. $contents = ob_get_contents();
  3. $t = $contents;

3) Si quiero sacar el titulo de la pagina aplico este script:
$t= ereg_replace("&lt;/title&gt;"," &lt;/title&gt;",$t);
$t = ereg('.*title&gt;([^<$]* )',$t,$w);
echo $w[1];

¿es valido esto para empezar? por que de donde saque la idea ya esta muy viejo.

y como puedo hacer si quiero extraer la información contenida en alguna etiqueta diferente??? por ejemplo <embed></embed>

gracias por su ayuda

edit: si la pagina es por ejemplo youtube, se puede hacer?
por que creo que no.

Última edición por memoadian; 27/12/2009 a las 22:24
  #2 (permalink)  
Antiguo 27/12/2009, 22:28
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: extraer datos con php

bueno, si te refieres a usar ereg() no es aconsejable, ahora se usa por convención PCRE
http://www.forosdelweb.com/f18/aport...s-pcre-646110/

y si, básicamente la técnica es esa... obtener el código generado del documento, y extraer alguna porción usando expresiones regulares...
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #3 (permalink)  
Antiguo 27/12/2009, 23:40
Avatar de memoadian
Colaborador
 
Fecha de Ingreso: junio-2009
Ubicación: <?php echo 'México'?>
Mensajes: 3.696
Antigüedad: 14 años, 10 meses
Puntos: 641
Respuesta: extraer datos con php

Edito:
bueno lo hice con
Código PHP:
Ver original
  1. <?php
  2. function getSource($host,$page) {
  3. $archivo = file("http://$host/$page");
  4. reset ($archivo);
  5. while (list ($clave, $val) = each ($archivo)) {
  6. echo htmlentities($val).'<br>';
  7. }}
  8. getSource("www.sitio.com/","pagina");
  9. ?>

pero como aprendi php antier (eso de aprendí, no es totalmente cierto)
necesito una mano con lo ereg y eso
seguiré investigando saludos.

Última edición por memoadian; 28/12/2009 a las 00:10
  #4 (permalink)  
Antiguo 28/12/2009, 10:29
Avatar de memoadian
Colaborador
 
Fecha de Ingreso: junio-2009
Ubicación: <?php echo 'México'?>
Mensajes: 3.696
Antigüedad: 14 años, 10 meses
Puntos: 641
Respuesta: extraer datos con php

a ver he estudiado eso de las expresiones regulares pero pues me falta algo, miren lo que tengo.
Código PHP:
Ver original
  1. <?php
  2. function getSource($host,$page) {
  3. $archivo = file("http://$host/$page");
  4. reset ($archivo);
  5. while (list ($clave, $val) = each ($archivo)) {
  6. echo htmlentities($val).'<br>';
  7. }}
  8. getSource("www.sitio.com/","pagina.html, php, etc.");
  9. //este es el intento de un ave, para sacar lo contenido dentro de las etiquetas <embed>
  10. $cadena='getSource';
  11. $patron="";
  12. //es aquí donde me trabo ya que no entiendo muy bien eso de crear el patrón
  13. $var=preg_match_all($patron, $cadena, $cap);
  14. echo "$var";  
  15. ?>

¿Voy bien o estoy del nabo y empiezo todo de nuevo?

gracias por su ayuda.

PD ya lei este tema:http://www.forosdelweb.com/f18/aport...s-pcre-646110/
y otros muchos pero si alguien me pudiera decir donde puedo leer la forma de hacer un patron decente.
  #5 (permalink)  
Antiguo 28/12/2009, 11:02
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: extraer datos con php

lo que sucede es que un patrón no es mágico, es lógico... aunque se vean muchos caracteres es muy fácil de entender...

por ejemplo, tu necesitas todo lo que dentro del <title/>, bien... puede ser algo así

Código PHP:
$patron "|<title>(.+?)</title>|"
lo importante aquí, son los paréntesis que sirven para capturar... y también los meta-caracteres dentro de ellos... leyendo el enlace que tienes revisa que significa cada uno...

al final, una expresión regular es solo eso.... un string común y corriente
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
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 20:30.