no, me referia a url del tipo<div><br></div><div><a href="http://sitioweb.com/index.php/04/08/nuevo-post">http://sitioweb.com/index.php/04/08/nuevo-post</a></div><div><br></div><div>Saludos<br><br><div class="gmail_quote">
2010/4/4 Jose Caballero <span dir="ltr"><<a href="mailto:jcaballero.hep@gmail.com">jcaballero.hep@gmail.com</a>></span><br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">
<br><div class="gmail_quote"><div><div></div><div class="h5"><blockquote class="gmail_quote" style="border-left:1px solid rgb(204, 204, 204);margin:0pt 0pt 0pt 0.8ex;padding-left:1ex"><br><div class="gmail_quote"><div>
2010/4/2 Jose Caballero <span dir="ltr"><<a href="mailto:jcaballero.hep@gmail.com" target="_blank">jcaballero.hep@gmail.com</a>></span><br></div><blockquote class="gmail_quote" style="border-left:1px solid rgb(204, 204, 204);margin:0pt 0pt 0pt 0.8ex;padding-left:1ex">
<br><br><div><div></div><div><div class="gmail_quote">El 2 de abril de 2010 11:45, Boris Perez Canedo <span dir="ltr"><<a href="mailto:inf200523@ucf.edu.cu" target="_blank">inf200523@ucf.edu.cu</a>></span> escribió:<div>
<div></div><div>
<br><blockquote class="gmail_quote" style="border-left:1px solid rgb(204, 204, 204);margin:0pt 0pt 0pt 0.8ex;padding-left:1ex">
<div><div></div><div>Hola,<br><br>quisiera poder comprobar que una
determinada URL existe y es accesible, pero sin 'descargar' su contenido, simplemente
comprobar que el server está activo, que el usuario no ha escrito mal la URL (sin
'typos'), etc., pero sin tener que descargar su contenido. Podría hacer un simple
wget the la URL y ver si funciona, pero no me interesa. <br><br>Intuyo que puedo
usar el método HEAD de HTTP que simplemente devuelve la metainformación
contenida en el HEAD. En principio eso seria suficiente. Ejemplo:<br><br>$ curl
--head <a title="Este enlace externo se abrirá en una nueva ventana" href="http://www.google.com" target="_blank">http://www.google.com</a><br>HTTP/1.0 200
OK<br>Date: Fri, 02 Apr 2010 15:00:37 GMT<br>Expires: -1<br>Cache-Control:
private, max-age=0<br>Content-Type: text/html; charset=ISO-8859-1<br>Set-Cookie:
PREF=ID=09c3639ccf643ace:TM=1270220437:LM=1270220437:S=lY6HpKCqZ3lZEW9_; expires=Sun,
01-Apr-2012 15:00:37 GMT; path=/; domain=.<a title="Este enlace externo se abrirá en
una nueva ventana" href="http://google.com" target="_blank">google.com</a><br>Set-Cookie:
NID=33=i_y0e-Tq2pAw8HxXMzD3KeH_H4Lqve81UH1WT_kQAwdJnRd0paMJz4KMZcp2cr1JqY35AkjVwYfK2UbPtlu_-9k4R0nFAuGe93JmxxebhGSdDtAxngWmq-FgfWELdfp0;
expires=Sat, 02-Oct-2010 15:00:37 GMT; path=/; domain=.<a title="Este enlace externo se
abrirá en una nueva ventana" href="http://google.com" target="_blank">google.com</a>;
HttpOnly<br>Server: gws<br>X-XSS-Protection: 0<br>X-Cache: MISS from
httpproxy4.bnl.vip<br>X-Cache-Lookup: MISS from httpproxy4.bnl.vip:3128<br>Proxy-Connection: close<br><br>$ curl --head <a title="Este enlace externo se
abrirá en una nueva ventana" href="http://www.google.comm" target="_blank">http://www.google.comm</a><br>HTTP/1.0 503 Service Unavailable<br>Server: squid/3.0.STABLE8<br>Mime-Version: 1.0<br>Date: Fri, 02 Apr 2010 15:08:02
GMT<br>Content-Type: text/html<br>Content-Length: 1823<br>Expires: Fri, 02 Apr
2010 15:08:02 GMT<br>X-Squid-Error: ERR_DNS_FAIL 0<br>X-Cache: MISS from
httpproxy4.bnl.vip<br>X-Cache-Lookup: MISS from httpproxy4.bnl.vip:3128<br>Proxy-Connection: close<br><br>Pero de esta forma es necesario hacer demasiado
'parsing', y no siempre la primera línea contiene "OK" aunque la URL
sea válida. No tengo demasiado claro cómo puedo validar la URL a partir de
este tipo de resultados. <br><br>He estado mirando un poco las clases urllib y
urllib2, pero no acabo de ver cómo puedo hacer la validación sin que el
contenido de la URL se descargue cuando existe. Si alguien tiene algún 'link' a
un ejemplo de cómo validar una URL sin necesidad de descargar su contenido,
válido para python2.3, estaré eternamente agradecido. <br><br><br>Muchas gracias. Saludos cordiales,<br><br>Jose<br><br></div></div>Hola Jose,<br><br>la
primera linea no siempre contiene OK, pero no puedes obtener el código de
respuesta e interpretarlo?<br><br>En el primer caso el código es 200<br>y
en el segundo 503, utiliza las expresiones regulares.<br><br>Ejemplo:<br>(HTTP/\d\.\d)\s(\d{3})<br>en el grupo 1 tienes la versión del protocolo y en
el grupo 2 el código.<br><br>import re<br>reobj =
re.compile(r"(HTTP/\d\.\d)\s(\d{3})")<br><br>match =
reobj.search(primera_linea)<br><br>if match:<br> version = match.group(1)<br> codigo = match.group(2)<div><div></div><div><br><br><br>Saludos,<br>Boris.<br><br></div></div></blockquote></div></div><div> <br>Hola Boris,<br>
<br>eso podría valer. ¿Es siempre 200 cuando todo va bien? Si es siempre el mismo número, o al menos un conjunto conocido de números, eso me vale. <br><br><br></div></div></div></div></blockquote></div></blockquote></div>
</div><div>
<br><br><br>El 4 de abril de 2010 11:36, necudeco <span dir="ltr"><<a href="mailto:necudeco@gmail.com" target="_blank">necudeco@gmail.com</a>></span> escribió:<div class="im"><br>NO Siempre.<br><br>Por
ejemplo con las url amigables, cuando envias una url inexistente el
sistema te devuelve una pagina que visualmente es 404, pero el codigo
http que te envia es 200<br><br>Saludos<br><br><br><br></div>Hola,<br>¿Te refieres a cosas como <a href="http://tinyurl.com" target="_blank">tinyurl.com</a>? Hmmm, algo a tener en cuenta, sin duda. Gracias por el comentario. <br>
<br><br>Jose<br>
</div></div><br>
<br>_______________________________________________<br>
Python-es mailing list<br>
<a href="mailto:Python-es@python.org">Python-es@python.org</a><br>
<a href="http://mail.python.org/mailman/listinfo/python-es" target="_blank">http://mail.python.org/mailman/listinfo/python-es</a><br>
FAQ: <a href="http://python-es-faq.wikidot.com/" target="_blank">http://python-es-faq.wikidot.com/</a><br>
<br></blockquote></div><br><br clear="all"><br>-- <br>Mario R. Uriarte Amaya<br>044 949369377<br>NeCuDeCo<br>Asociacion Peruana de Software Libre<br><a href="http://necudeco.com">http://necudeco.com</a><br><a href="http://apesol.org">http://apesol.org</a><br>
</div>