No soy muy diestro en estas cosas. He conseguido este ejemplo. Podrè hacer pegar mi webserver (localhost) con esto????
ADJUNTO EL EJEMPLO. ----- Mensaje original ----- De: "Nekmo" <conta...@nekmo.com> Para: "La lista de python en castellano" <python-es@python.org> Enviados: Sábado, 23 de Julio 2011 8:42:42 Asunto: Re: [Python-es] Cliente HTTP para pruebas de red Puede hacerlo de forma sencilla con urllib, y te recomiendo usar threads. Saludos. Un cordial saludo: -- Nekmo. Sitio web: http://nekmo.com Dirección de contacto: conta...@nekmo.com XMPP/Jabber: conta...@nekmo.com Identi.ca: http://identi.ca/nekmo Diaspora: Nekmo Google+: Nekmo Com El día 23 de julio de 2011 07:23, Allan N. Porras <alp...@netsescr.com> escribió: > Me han dicho que para "pegar" o "tostar" un web server es enviandole muchos > POST. ¿Como puedo hacer eso en Python? > > Necesito "pegar" un web server (Apache o cualquiera) y medir el desempeño del > sistema operativo. > > Gracias a todos por las ideas. > > ----- Mensaje original ----- > De: "lasizoillo" <lasizoi...@gmail.com> > Para: "La lista de python en castellano" <python-es@python.org> > Enviados: Sábado, 16 de Julio 2011 5:39:42 > Asunto: Re: [Python-es] Cliente HTTP para pruebas de red > > El día 16 de julio de 2011 06:24, Allan N. Porras > <alp...@netsescr.com> escribió: >> He estado leyendo estas bibliotecas, pero no tengo idea de còmo funciona. >> >> http://code.google.com/p/httplib2/wiki/Examples >> >> Ideas?? >> > > Si, mira, esta todo explicado en el siguiente enlace: > http://www.w3.org/Protocols/rfc2616/rfc2616.txt > > Una vez mirado eso podrás entender cómo funciona httplib2 o incluso > hacerte tu propia librería a base de sockets. > > Para entender como hacer pruebas para "tostar" un servidor web antes > tendrás que saber como está (o puede estar) implementado el server. A > veces la mejor forma de dejarlo ko no es enviar muchas peticiones muy > rápidas: > http://en.wikipedia.org/wiki/Slowloris > > Si sabes como funcionan los buffers tcp, el manejador de eventos de > red, que partes se tratan en modo kernel o en modo usuario, la > implementación de la multitarea (procesos, hilos, eventos), ... es más > fácil hacer algo para "tostar" el sistema. > > Saludos: > > Javi > _______________________________________________ > Python-es mailing list > Python-es@python.org > http://mail.python.org/mailman/listinfo/python-es > FAQ: http://python-es-faq.wikidot.com/ > _______________________________________________ > Python-es mailing list > Python-es@python.org > http://mail.python.org/mailman/listinfo/python-es > FAQ: http://python-es-faq.wikidot.com/ > _______________________________________________ Python-es mailing list Python-es@python.org http://mail.python.org/mailman/listinfo/python-es FAQ: http://python-es-faq.wikidot.com/
# File: httplib-example-1.py import httplib USER_AGENT = "httplibx.py" class Error: # indicates an HTTP error def __init__(self, url, errcode, errmsg, headers): self.url = url self.errcode = errcode self.errmsg = errmsg self.headers = headers def __repr__(self): return ( "<Error for %s: %s %s>" % (self.url, self.errcode, self.errmsg) ) class Server: def __init__(self, host): self.host = host def fetch(self, path): http = httplib.HTTP(self.host) # write header http.putrequest("GET", path) http.putheader("User-Agent", USER_AGENT) http.putheader("Host", self.host) http.putheader("Accept", "*/*") http.endheaders() # get response errcode, errmsg, headers = http.getreply() if errcode != 200: raise Error(errcode, errmsg, headers) file = http.getfile() return file.read() if __name__ == "__main__": server = Server("localhost") # while 1>0: print server.fetch("/index.html")
_______________________________________________ Python-es mailing list Python-es@python.org http://mail.python.org/mailman/listinfo/python-es FAQ: http://python-es-faq.wikidot.com/