在Python Flask中检测浏览器语言

时间:2015-05-24 16:46:05

标签: python flask

我需要使用Python Flask获取浏览器语言。我试过用:

request.headers.get('languages')

然而,这会返回None

我尝试了whoer.net,并为我的浏览器语言返回it-IT。如何使用Python Flask检测浏览器语言?

3 个答案:

答案 0 :(得分:3)

查看Werkzeug的LanguageAccept data structure,或者只是尝试这样的方式来获得最佳匹配:

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

如果您需要更多,请查看Flask-Babel

答案 1 :(得分:0)

您应该检查HTTP_ACCEPT_LANGUAGE

答案 2 :(得分:0)

以下代码段指导如何从浏览器获取语言

@app.route('/link')
def mylink():
    print request.accept_languages

如果浏览器(例如chrome)支持多种语言(例如参见链接),则print语句将打印浏览器支持的所有语言。列出的第一种语言是用户的首选语言。

chrome language settings example