PHP - Algun ejemplo para esto?

 
Vista:

Algun ejemplo para esto?

Publicado por skelt (1 intervención) el 01/03/2006 05:49:43
me gustaria saber si tienen ejemplos de algun codigo, que : abra un archivo con una lista de url's , despues de cargadas, que vaya abriendolas una por una, si la direccion es invalida, siga con la otra hasta encontrar una valida, se lo agradeceria mucho,
salu2 y de antemano, gracias
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

te digo como hacerlo, pero no te doy el codigo

Publicado por xxx (40 intervenciones) el 01/03/2006 17:45:44
no es que no te lo de porque sea malo. sino poruqe no lo tengo.
y por lo general todo el codigo que escribo es libre

funciones/construcciones a utilizar
- file_get_contents() o las funciones de cURL
- foreach
- array
- explode (para leer los HTTP HEADERS)

hay algo dando vuelta que se llama Snoopy ( http://snoopy.sourceforge.net/ ) , o puedes usar cURL, para bajar paginas.

puedes encontrar ejemplos en:
http://developer.yahoo.net/php/
en particular estos dos:
- http://developer.yahoo.net/php/samples/request/requestFILEGC.txt
- http://developer.yahoo.net/php/samples/request/requestCURLGET.txt

byee...
xxx
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Algun ejemplo para esto?

Publicado por skelt (12 intervenciones) el 02/03/2006 17:13:51
Mira aqui, ya tengo un codigo, hace el trabajo, pero muy lento, considerando k tengo k procesar al menos 2000 paginas, k puedo hacer para acelerar el proceso??
Grx
<?php
set_time_limit(0);
foreach(file('urls.txt') as $link_page)
{

$ch = curl_init();
curl_setopt($ch,

CURLOPT_URL,"xxx.xxxx.com/var.php?=$link_page");
curl_setopt($ch, CURLOPT_RETURNTRANSFER,1);
$result=curl_exec ($ch);
curl_close ($ch);

preg_match ("/TEXTO A ENCONTRAR./", $result, $matches);

if (count($matches)>0){
echo "$link_page, EXISTS<br>";
print_r($matches);
break;

}else{
// if there are no items in the array, then no matches were found.
echo "$link_page\n, DOESNT EXIST<br>";
}
}

?>
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

no mucho

Publicado por xxx (35 intervenciones) el 02/03/2006 20:07:39
no lo he provado, pero cURL es la opcion mas rapida, ya que los sockets de php son demasiado lentos.
lo que puedes hacer es ordernar las url por orden alfabetico. asi haces varios pedidos al msimo servidor, sin desconectarte (tendrias que averiguar como enviar -si que es ya curl no lo hace- el header Keep-Alive, para que no te desconecte .

bueno. otro mas que eso. no se.
cachear las paginas, asi si tienes que reiniciar el script no tienes que volver a bajarlas de nuevo.
o en su defecto, guardar la ultima url visitada, asi te saltas todas las uqe ya visitaste.

eso es todo.
xxx
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar