On Thu, 16 Dec 2010 18:42:33 +0100 Sergio Martín wrote: > ¿Alguien sabe de algún modo para reconocer un catcha?, desde Python o desde > línea de comandos (por medio de alguna aplicación). La cuestión es que el > resultado me llegue a Python.
No sé si existe tal librería, pero aunque así fuera sólo tendría soporte para captchas específicos y concretos, porque por su propia naturaleza es imposible encontrar una solución genérica. Hay captchas tan sencillos que un simple OCR los resuelve, y otros tan complejos (¿reCaptcha?) que la tarea se antoja imposible. Cada captcha, pues, requiere un análisis específico. Si se ve factible, el primer paso es tratar de arreglar la imagen lo máximo posible, y delegar el trabajo final a un OCR. "Arreglar" quiere poder decir orientar los caracteres, alinearlos, separarlos si estaba pegados, limpiar ruido, quitar colores, etc. Si un OCR estándar no funciona bien a pesar de la limpieza, se puede usar uno que permitan entrenamiento específico (normalmente lo hacen usando redes neuronales), lo que suele mejorar los resultados sensiblemente. Un ejemplo de un captcha sencillo lo tienes en el captcha que venía utilitzando hasta hace unas semanas Megaupload. Tan sencillo que tesseract lo resolvía a pelo: $ wget http://plowshare.googlecode.com/svn/trunk/test/pics/megaupload_dte5.gif $ convert megaupload_dte5.gif tif:- > captcha.tif $ tesseract captcha.tif captcha $ cat captcha.txt | xargs DTE5 Un ejemplo de adecentamiento de captcha + OCR con el captcha antiguo de Megaupload: http://code.google.com/p/plowshare/wiki/BreakingMegauploadCaptcha y un ejemplo en Javascript usando redes neuronales, también para Megaupload: http://hg.herecomethelizards.co.uk/mu_autocaptcha (huelga decir que asumimos que quieres resolver un captcha para un uso lícito ;-)) arnau _______________________________________________ Python-es mailing list [email protected] http://mail.python.org/mailman/listinfo/python-es FAQ: http://python-es-faq.wikidot.com/
