Próbuję uzyskać dostęp do agenta użytkownika za pomocą Flask, ale albo nie mogę znaleźć na nim dokumentacji, albo nie mówi mi się.W jaki sposób uzyskać agenta użytkownika z Flask?
79
A
Odpowiedz
129
from flask import request
request.headers.get('User-Agent')
Można również użyć obiektu request.user_agent
, który zawiera następujące atrybuty, które są tworzone w oparciu o ciągu identyfikującego:
- platformy (Windows, Linux, MacOS, etc.)
- przeglądarka (chrome, firefox, msie itp.)
- wersja
- język
- string (
== request.headers.get('User-Agent')
)
19
flask.request.user_agent.string
12
Jeśli używasz
request.headers.get('User-Agent')
można uzyskać: Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537,36 (KHTML, like Gecko) Chrome/45.0.2454.101 Safari/537,36
Jeśli używasz
request.user_agent
można uzyskać tak:
- user_agent.platform: Okna
- user_agent.browser: chrom
- user_agent.version: 45.0.2454.101
- user_agent.language : Brak
- user_agent.string: Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, jak Gecko) Chrome/45.0.2454.101 Safari/537.36
1
UA zwykle nie zawiera języka. Jeśli chcesz ustawić język w przeglądarce, możesz użyć tej opcji, aby uzyskać listę języków. Na przykład.
LanguageAccept([('en-US', 1), ('en', 0.5)])
Aby uzyskać dostęp do pierwszej wartości, można użyć
request.accept_languages[0][0]
co spowoduje ciąg
'en-US'
Szczegółowe informacje o „accept_language” Header: https://www.w3.org/International/questions/qa-lang-priorities
Powiązane problemy
- 1. W jaki sposób tworzysz komponent wielokrotnego użytku z Flask-SQLAlchemy?
- 2. capibara poltergeist - zastępowanie agenta użytkownika
- 3. HTMLUnit: zmiana ciągu agenta użytkownika
- 4. Jaki jest standardowy format ciągu użytkownika agenta przeglądarki?
- 5. Przełączanie agenta użytkownika w trakcie żądania?
- 6. W jaki sposób mogę przetestować urządzenie w tej aplikacji Flask?
- 7. Miejsca nieakceptowania nagłówek agenta wget użytkownika
- 8. Jak ustawić agenta użytkownika w aplikacji Cordova
- 9. Przepuścić agenta użytkownika przez webdriver w Selenium
- 10. W jaki sposób Flask-SQLAlchemy create_all odkrywa modele do utworzenia?
- 11. jak analizować ciąg agenta użytkownika? python
- 12. Co to jest arkusz stylów agenta użytkownika
- 13. Zastąpienie arkusza stylów użytkownika agenta - Chrome
- 14. Czy można uzyskać czytelną dla człowieka kombinację urządzenie/przeglądarka z ciągu agenta użytkownika?
- 15. Kod do analizy łańcucha agenta użytkownika?
- 16. Łańcuch agenta użytkownika dla IPhone 4S
- 17. gitlab] w jaki sposób wyłączyć e-mail z potwierdzeniem użytkownika?
- 18. Jak ustawić domyślnego agenta użytkownika na HttpClient?
- 19. W jaki sposób uzyskać dane wejściowe użytkownika z pola tekstowego i przekonwertować je na podwójne?
- 20. Jak mogę zmienić tożsamość użytkownika uruchamiającego agenta kompilacji w TeamCity?
- 21. Wykryj agenta użytkownika w Railsach 4 - przeczytaj nagłówek HTTP
- 22. Zmienianie ciągu znaków agenta użytkownika w żądaniu http w R
- 23. W jaki sposób można podzielić modele Flask z aplikacji app.py bez przerzucania obiektu db?
- 24. Flask - Jak uzyskać identyfikator sesji
- 25. W Flask: Jak uzyskać dostęp do aplikacji Logger w Blueprint
- 26. W jaki sposób przycisk może uzyskać ostrość?
- 27. Zezwalaj tylko na jednego użytkownika-agenta, zablokuj resztę w nginx?
- 28. W ansibla, w jaki sposób uzyskać zmienną o nazwie użytkownika uruchamiającego ansibl?
- 29. W edytorze przepływu pracy projektanta programu Sharepoint, w jaki sposób uzyskać nazwę użytkownika inicjatora przepływu pracy?
- 30. Jaki jest właściwy sposób użycia kolby z zeromq w produkcji?
Dlaczego język Czy istnieje prosty sposób na uzyskanie języka? – Faminator
@Faminator, jeśli klient przeglądarka nie ustawia pola języka, a serwer nie ma możliwości jego uzyskania, dlatego po prostu pokazuje Brak. – ffledgling