Pergunta

O que é o melhor método para analisar uma seqüência User-Agent em Python para confiantemente detectar

  1. navegador
  2. A versão do navegador
  3. OS

Ou talvez qualquer biblioteca auxiliar que faz

Foi útil?

Solução

Respondendo a minha própria pergunta;)

Finalmente eu decidi ir por sugestão # 1 ou seja, escrever o seu próprio. E eu estou feliz com o resultado. Sinta-se livre para usar / modificar / enviar-me corrigir etc.

É aqui -> http://pypi.python.org/pypi/httpagentparser

Outras dicas

UASparser para Python por Hicro Kee. Auto arquivo de dados e o cache de um servidor remoto atualizado com verificação de versão.

Werkzeug tem user-agent analisar built-in.

Novo link (Jun 2018) http://werkzeug.pocoo.org/docs/0.14/utils /#module-werkzeug.useragents

Depois de executar estas sugestões contra o corpus completo de Firefox User Agents , eu encontrei que a análise version-number para comparação é bastante pobre.

Se é isso que você precisa, eu sugiro que você dê uma olhada UAparser , que costumava ser parte do href="http://code.google.com/p/browserscope/" rel="noreferrer"> browserscope projeto . Documentação aqui.

As outras respostas a esta pergunta são bastante velho agora. Eu acredito que o novo padrão no navegador do usuário análise Agent é de Browserscope analisador agente .

Também convenientemente disponível com os exata mesmos padrões de harmonização em muitas outras línguas . Algum dia você pode querer também analisar algumas cordas UA em JavaScript e você não precisa se preocupar com a análise inconsistente.

navegador Cap Analisador deve funcionar. Pode ser um pouco lento embora ..

No entanto, se você deseja analisar tudo isso no lado do Python você pode usar o XML / INI arquivos fornecidos pelo http://browsers.garykeith.com/downloads.asp para fazer pesquisas sobre o agente do usuário. Este é o mesmo arquivo que é usado em get_browser do php () função.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top