python - Análisis de cadena de agente de usuario HTTP
http-headers user-agent (7)
¿Cuál es el mejor método para analizar una cadena de User-Agent en Python para detectar de manera confiable
- Navegador
- Versión del navegador
- OS
O tal vez cualquier biblioteca auxiliar que lo haga
Después de haber ejecutado estas sugerencias contra el corpus completo de Agentes de usuario de Firefox , he encontrado que el análisis del número de versión para la comparación es bastante pobre.
Si eso es lo que necesita, le sugiero que eche un vistazo a UAparser , que solía ser parte del proyecto browserscope . Documentación aquí.
Las otras respuestas a esta pregunta ya son bastante antiguas. Creo que el nuevo estándar en el análisis del agente de usuario del navegador es el analizador del agente de usuario de Browserscope.
También está disponible convenientemente con exactamente los mismos patrones de combinación en muchos otros idiomas . Algún día es posible que también desee analizar algunas cadenas de caracteres de UA en JavaScript y no tendrá que preocuparse por el análisis incoherente.
Respondiendo mi propia pregunta;)
Finalmente, decidí seguir con la sugerencia n. ° 1, es decir, escribir la tuya. Y estoy feliz con el resultado. Por favor, siéntase libre de usar / modificar / enviarme parche, etc.
Está aquí -> http://pypi.python.org/pypi/httpagentparser
Sin embargo, si desea analizar todo esto en Python, puede usar los archivos XML / INI proporcionados en http://browsers.garykeith.com/downloads.asp para realizar búsquedas en el agente de usuario. Este es el mismo archivo que se utiliza en la función get_browser () de php.
Th Browser Cap Parser debería funcionar. Aunque puede ser un poco lento ...
Werkzeug tiene un análisis de usuario-agente incorporado.
http://werkzeug.pocoo.org/docs/0.10/utils/#module-werkzeug.useragents
UASparser para Python por Hicro Kee. Archivo de datos y caché actualizados automáticamente desde el servidor remoto con verificación de versión.