Foros del Web » Programando para Internet » PHP »

Problemas para recoger datos de una web

Estas en el tema de Problemas para recoger datos de una web en el foro de PHP en Foros del Web. Hola a todos :) Soy nueva por aqui, he estado leyendo tiempo atrás el foro y he aprendido mucho con ustedes. Ahora estoy tratando de ...
  #1 (permalink)  
Antiguo 27/11/2007, 06:35
 
Fecha de Ingreso: noviembre-2007
Mensajes: 8
Antigüedad: 16 años, 4 meses
Puntos: 0
Problemas para recoger datos de una web

Hola a todos :)

Soy nueva por aqui, he estado leyendo tiempo atrás el foro y he aprendido mucho con ustedes.

Ahora estoy tratando de hacer un script que recoja datos de las empresas de la categoría relacionada con la empresa donde yo trabajo, del mismo sector, para poder ofrecerles servicios, para poder ver que servicios ofrecen ellos, etc..

El caso es que por ejemplo, me encuentro en: http://www.paginasamarillas.es/imagen-y-sonido_859.html

Me encuentro con fichas del tipo:

CASA CARRIL

IMAGEN Y SONIDO

Empresa pionera en el sector, dirigida a los profesionales y aficionados
a la fotografía, vídeo y audio.

www.casacarril.com

28010 MADRID

Ver Web - Ver teléfono - Direcciones / mapa - Recibir SMS

Los primeros campos como Titulo, Categoria, Descripcion, Web, CP y Ciudad se muestran directamente por lo que no hay problemas para recogerlos, el lio me lo encuentro al tratar de recoger datos de: Ver Web - Ver teléfono - Direcciones / mapa - Ya que estos datos se muestran pinchando sobre ellos y no doy con la manera de poder recoger los datos.. :(

Si alguien me puede ayudar u orientar se lo agradecería...

Estoy realizando el trabajo en PHP y MySQL..
  #2 (permalink)  
Antiguo 27/11/2007, 07:00
 
Fecha de Ingreso: octubre-2007
Ubicación: Madrid, España
Mensajes: 221
Antigüedad: 16 años, 6 meses
Puntos: 5
Re: Problemas para recoger datos de una web

Yo hye estado buscando en el código fuente de la pag y ahi esta todo :D

¿Como quieres recoger los datos? ¿lo haces con un código de PHP?
  #3 (permalink)  
Antiguo 27/11/2007, 07:25
Avatar de eddwinpaz  
Fecha de Ingreso: noviembre-2007
Ubicación: Merida , Venezuela
Mensajes: 1.066
Antigüedad: 16 años, 5 meses
Puntos: 25
Re: Problemas para recoger datos de una web

Tu quieres capturar datos de X pagina y salvarla en tu pagina web ? Bueno en realidad Con Apache creo que escuche que se hace eso. Pero no se como se hace de la manera que tu dices. Lo que si estoy seguro es que con XML o CVS si se puede capturar datos de X web y almacenarlos en tu DB, Puesto que estos lenguajes siempre se usan de intermediarios para cualquier proceso de interaccion de datos. Saludos .
  #4 (permalink)  
Antiguo 27/11/2007, 07:34
 
Fecha de Ingreso: noviembre-2007
Mensajes: 8
Antigüedad: 16 años, 4 meses
Puntos: 0
Re: Problemas para recoger datos de una web

Hola dualklip,

la idea es hacer un script en PHP que recoja todos los datos de la empresa y los almacene en una base de datos.

CASA CARRIL

IMAGEN Y SONIDO

Empresa pionera en el sector, dirigida a los profesionales y aficionados
a la fotografía, vídeo y audio.

www.casacarril.com

28010 MADRID

Ver Web - Ver teléfono - Direcciones / mapa - Recibir SMS

Quedaría, o debería quedar...jeje así:

Titulo: CASA CARRIL
Categoria: Imagen y Sonido
Descripcion: Empresa pionera en el sector, dirigida a los profesionales y aficionados a la fotografía, vídeo y audio.
URL: www.casacarril.com
CP: 28010
Ciudad: Madrid
Telefono: 914 470 512
Direccion_mapa: MADRID - 28028 Avenida de América, 2

En este caso, el ejemplo tiene dos direcciones, asi que debería ver como almacenarlas en caso de que fueran dos, pero eso no me preocupa tanto, lo que no sé es como obtener esos datos que te menciono.

edwinpazz lo estoy tratando de realizar con PHP a ver que tal me manejo...
  #5 (permalink)  
Antiguo 27/11/2007, 08:20
 
Fecha de Ingreso: octubre-2007
Ubicación: Madrid, España
Mensajes: 221
Antigüedad: 16 años, 6 meses
Puntos: 5
Re: Problemas para recoger datos de una web

tengo un código que hace exactamente con la web de seagate.com para sacar todos los productos que tiene esa marca en una BB.DD pero esta en casa, cuando llegue esta noche te subo el código.

La idea es que hay una función en PHP (que ya ni me acuerdo como se llama) que coge una web determinada y la trata como texto, es decir no ejecuta el código, así que puedes buscar por ella los datos como si fuera una cadena de texto.

Ya te lo enseñaré esta noche.
  #6 (permalink)  
Antiguo 27/11/2007, 08:29
 
Fecha de Ingreso: junio-2006
Mensajes: 270
Antigüedad: 17 años, 10 meses
Puntos: 0
Re: Problemas para recoger datos de una web

Esto es una de las cosas mas sencillas que hay.
En html te haces un formularo donde pones los tipos de datos de cada casilla. Con el dreamweaver lo puedes hacer en modo grafico. Lo mas importante de aqui es el name de las formularios.
En el php lo que haces es recoger los datos. Para ellos simplemente tienes que poner: $variable = $HTTP_VAR_POST ['nombre_del_formulario'];
Te puedes seguir cualquier manual por si lo encuentras dificil. Pero creo que esto es sencillo.
Lo mejor es verte un ejemplo:
Código HTML:
<form action="upload.php" method="post" enctype="multipart/form-data">
<p><label>Nombre <input type="text" name="nombre"></label></p>
<table width="200">
  <tr>
    <td><label>
      <input type="radio" name="tabla" value="senora" />
      Senora</label></td>
  </tr>
  <tr>
    <td><label>
      <input type="radio" name="tabla" value="caballero" />
      Caballero</label></td>
  </tr>
  <tr>
    <td><label>
      <input type="radio" name="tabla" value="novias" />
      Novias</label></td>
  </tr>
  <tr>
    <td><label>
      <input type="radio" name="tabla" value="comunion" />
      Comunion</label></td>
  </tr>
</table>
<p><label>Descripcion <textarea name="descripcion" rows="4" style="width:80%;"></textarea>
</label></p>
<p><label>Imagen <input type="file" name="imagen"></label></p>
<p><label>Clave <input name="password" type="password" id="password" /></label></p>
<p><input type="submit" value="Subir"></p>
</form> 
Si metes el codigo en el dreamweaver veras esto en modo grafico, y veras que son simplemente formularios.
Y para el php, pues simplemente:
Código PHP:
$tabla$HTTP_VAR_POST ['tabla'];
$imagen= $$_FILES['imagen'];
$password$HTTP_VAR_POST ['password']; 
Luego comentarte que no pongas algo tipo:
Código PHP:
if ($password == pass) {} 
porque si alguien te pasa la contraseña como "1 == 1 OR 1" la funcion te quedaria:
Código PHP:
if (== OR == pass) {} 
Como ves eso es true. A eso se llama ataque de inyección, y para evitarlo, o "limpias" la variable (es decir, quitar los caracteres no alfanumericos), o utilizas otro metodo como strcmp que compara dos cadenas. Que yo sepa asi se evitan ataques de inyeccion.
  #7 (permalink)  
Antiguo 28/11/2007, 01:17
 
Fecha de Ingreso: noviembre-2007
Mensajes: 8
Antigüedad: 16 años, 4 meses
Puntos: 0
Re: Problemas para recoger datos de una web

Gracias darxer0x por la explicación, pero no sé si soy muy torpe o no me expliqué bien..

Lo que quiero es recoger datos de otra página, osea un script que recorra una página y vaya almacenando determinado tipo de datos..

Si es así como me dices agradecería si pudieras ampliar la explicación o decirme donde leer algo al respecto.. :)
  #8 (permalink)  
Antiguo 29/11/2007, 06:21
 
Fecha de Ingreso: noviembre-2007
Mensajes: 8
Antigüedad: 16 años, 4 meses
Puntos: 0
Re: Problemas para recoger datos de una web

He estado mirando y remirando las funciones de PHP en php.net y no he sabido encontrar ninguna que haga lo que quiero.. que es, un script que recoja datos de otra pagina web y los almacene en mi BD..

¿alguien conoce alguna funcion que me permita esto que pido? gracias :)
  #9 (permalink)  
Antiguo 10/06/2008, 07:38
 
Fecha de Ingreso: septiembre-2006
Mensajes: 68
Antigüedad: 17 años, 7 meses
Puntos: 0
Respuesta: Re: Problemas para recoger datos de una web

Cita:
Iniciado por andrea27 Ver Mensaje
He estado mirando y remirando las funciones de PHP en php.net y no he sabido encontrar ninguna que haga lo que quiero.. que es, un script que recoja datos de otra pagina web y los almacene en mi BD..

¿alguien conoce alguna funcion que me permita esto que pido? gracias :)
Estoy interesado en lo mismo
¿Alguna pista?
  #10 (permalink)  
Antiguo 10/06/2008, 07:45
 
Fecha de Ingreso: febrero-2007
Mensajes: 38
Antigüedad: 17 años, 1 mes
Puntos: 0
Respuesta: Problemas para recoger datos de una web

Hola

La verdad en PHP no se de ninguna funcion que haga lo que estas pidiendo ni he visto ningun script que lo haga
  #11 (permalink)  
Antiguo 10/06/2008, 07:45
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: Problemas para recoger datos de una web

quizá no es que haya una función directa para ello (y no la hay) sino que uds. con toda la magia de PHP, deben generar estos procesos....

una, es con sockets y la otra con CURL ¿donde abre leído esto? ahhh si... en la pagina de PHP

http://php.net/file_get_contents (allow_url_fopen)
http://php.net/sockets
http://php.net/curl

la mejor manera de leer los enlaces (como hacen los robots) es a través de expresiones regulares.... si esto se les hace muy difícil hay una clase llamada HTMLSQL o algo así....

PDTA: php no les va a hacer nada, así porque se lo pidan... (ojala) uds. deben programarlo
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #12 (permalink)  
Antiguo 10/06/2008, 07:49
 
Fecha de Ingreso: septiembre-2006
Mensajes: 68
Antigüedad: 17 años, 7 meses
Puntos: 0
Respuesta: Problemas para recoger datos de una web

Cita:
Iniciado por pateketrueke Ver Mensaje
quizá no es que haya una función directa para ello (y no la hay) sino que uds. con toda la magia de PHP, deben generar estos procesos....

una, es con sockets y la otra con CURL ¿donde abre leído esto? ahhh si... en la pagina de PHP

la mejor manera de leer los enlaces (como hacen los robots) es a través de expresiones regulares.... si esto se les hace muy difícil hay una clase llamada HTMLSQL o algo así....

PDTA: php no les va a hacer nada, así porque se lo pidan... (ojala) uds. deben programarlo
Muchísimas gracias!
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 13:20.