python flask detect browser language

python flask detect browser language

            
         up vote-2down votefavorite
 

I need to get the browser language with Python flask. I have tried to use:

request.headers.get('languages')

This however returns None.

I tried whoer.net and it returned it-IT for my browser language. How can I detect the browser language with Python flask ?

share|improve this question
 
                                                                                                                    
Have you tried something like print(request.headers) to see what is in there?                     – IanAuld                 May 25 '15 at 14:50                                                                            

2 Answers                                 2

         up vote0down vote

You should check HTTP_ACCEPT_LANGUAGE

share|improve this answer
 
                                                                                                                    
This does not provide an answer to the question. To critique or request clarification from an author, leave a comment below their post.                     – Ken Y-N                 May 25 '15 at 1:29                                                                            
            
         up vote0down vote

Check out Werkzeug's LanguageAccept data structure, or just try something like this to get a best match:

supported_languages = ["en", "nl", "it"]
lang = request.accept_languages.best_match(supported_languages)

If you need more than that, then check out Flask-Babel.

posted @ 2016-06-08 13:28  功夫 熊猫  阅读(667)  评论(0编辑  收藏  举报