Каков наилучший способ анализа строки User-Agent в Python для надежного обнаружения
Или, может быть, любая вспомогательная библиотека, которая делает это
Отвечая на мой вопрос;)
Наконец, я решил пойти по предложению № 1, то есть написать свое. И я доволен результатом. Пожалуйста, не стесняйтесь использовать / изменить / отправить мне патч и т. Д.
Это здесь -> http://pypi.python.org/pypi/httpagentparser
UASparser для Python Хиро Ки. Автоматически обновляемый файл данных и кеш с удаленного сервера с проверкой версии.
Werkzeug имеет встроенный синтаксический анализ агента пользователя.
Новая ссылка (июнь 2018) http://werkzeug.pocoo.org/docs/0.14/utils/#module-werkzeug.useragents
Остальные ответы на этот вопрос сейчас довольно старые. Я полагаю, что новый стандарт в синтаксическом анализе агента пользователя браузера - анализатор агента пользователя браузера .
Также доступно с точно такими же шаблонами на во многих других языках . Когда-нибудь вы захотите также проанализировать некоторые строки UA в JavaScript, и вам не нужно беспокоиться о непоследовательном разборе.
Запустив эти предложения в отношении полного набора пользовательских агентов Firefox , я обнаружил, что анализ номера версии для сравнения довольно плох.
Если это то, что вам нужно, я предлагаю вам взглянуть на UAparser , который раньше был частью проекта browsers . Документация здесь.
Th Browser Cap Parser должен работать. Это может быть немного медленно, хотя ..
Однако, если вы хотите проанализировать все это на стороне Python, вы можете использовать файлы XML / INI, предоставленные в http://browsers.garykeith.com/downloads.asp, для поиска агента пользователя. Это тот же файл, который используется в функции php get_browser ().