Jaka jest najlepsza metoda do analizowania ciąg User-Agent w Pythonie niezawodnie wykrywaćanalizowaniem HTTP User-Agent ciąg
- Przeglądarka
- wersja Przeglądarka
- OS
czy może dowolna biblioteka pomocnicza, która to robi:
Jaka jest najlepsza metoda do analizowania ciąg User-Agent w Pythonie niezawodnie wykrywaćanalizowaniem HTTP User-Agent ciąg
czy może dowolna biblioteka pomocnicza, która to robi:
Odpowiadając na moje własne pytanie;)
W końcu zdecydowałem się pójść za sugestią # 1 to znaczy pisać własne. I jestem zadowolony z wyniku. Prosimy użyć/zmodyfikować/wysłać mi załatać itp
To tutaj ->http://pypi.python.org/pypi/httpagentparser
Nie wydaje się to działać szczególnie dobrze na telefony komórkowe. W szczególności nie wykryto blackberry. (chociaż masz +1 za napisanie tego!) –
@Jason Sundram Jeśli pomagasz, dostarczając ciągi agenta i oczekiwane wyniki, Blackberry, inne mogą być obsługiwane. Sprawdź https://github.com/shon/httpagentparser/issues – Shekhar
Byłem zainteresowany porównaniem, ale jest to słuszne. Cofnięty. –
Jednak jeśli chcesz przeanalizować to wszystko po stronie Pythona, możesz użyć XML/INI pliki udostępnione pod numerem http://browsers.garykeith.com/downloads.asp do wyszukiwania w programie klienckim. Jest to ten sam plik, który jest używany w funkcji get_browser() php.
Th Browser Cap Parser powinien działać. To może być nieco powolna, chociaż ..
UASparser for Python przez Hicro Kee. Automatycznie zaktualizowany plik danych i pamięć podręczną ze zdalnego serwera z kontrolą wersji.
Polecam również parser UA. – Dexter
Po uruchomieniu tych sugestii przeciwko the full corpus of Firefox User Agents, stwierdziłem, że analizowanie numerów wersji w celu porównania jest dość słabe.
Jeśli tego potrzebujesz, sugeruję, aby przyjrzeć się UAparser, który był częścią projektu browserscope. Documentation here.
Myślę, że bardziej aktualna wersja jest w tym repo: https://github.com/tobie/ua-parser – mbarkhau
Werkzeug ma wbudowane analizowanie agenta użytkownika.
http://werkzeug.pocoo.org/docs/0.10/utils/#module-werkzeug.useragents
Interesujące. Szybko sprawdziłem kod. Jest to naprawdę prosty, przyjemny kod w istocie serią wyrażeń regularnych dopasowanych do ciągu agenta. Interesujące byłoby to, jak to działa. Jednym z plusów Werkzeug jest wykrywanie języka, a zaletą httpagentparaser jest wykrywanie wersji OS. – Shekhar
Brakujące połączenie, musi zostać zaktualizowane – Siddharth
Pozostałe Odpowiedzi na to pytanie są już dość stare. Wydaje mi się, że nowym standardem podczas analizowania agenta użytkownika przeglądarki jest wersja user agent parser Browserscope.
dogodnie dostępne z dokładnie takie same wzorce dopasowania w many other languages. Któregoś dnia możesz również przeanalizować niektóre ciągi UA w JavaScript i nie musisz się martwić o niespójne analizowanie.
Bardziej do rzeczy, w zależności od wersji systemu operacyjnego i wersji dla wykrywania możliwości nie jest dobrą strategią. Jaki problem próbujesz rozwiązać? –
Mamy prosty formularz zgłoszenia biletu do naszej aplikacji internetowej. Często pytamy użytkowników o to, czym jest broswer/OS itd. Możemy więc wcześniej wykryć to i poprosić użytkownika o potwierdzenie. Cóż, jeśli to nie jest takie proste, po prostu zrzuty klienta użytkownika, ale nadal trzeba zadawać pytania, jak użytkownik może za pomocą innej przeglądarki, aby przesłać bilet. – Shekhar
Możesz po prostu pozwolić, aby Python renderował formularz i używał JavaScript do zmiany wartości pól wejściowych na bieżące systemy operacyjne i do czego chcesz. – NerdyNick