如何在 Textblob python 语言检测库中进行语言扩展
How to get language expansion in Textblob python language detection library
我需要一个语言检测脚本。我尝试了 Textblob 库,它现在给了我语言的两个字母缩写。如何获得完整的语言扩展?
这检测语言有两个字母缩写的语言
from textblob import TextBlob
b = TextBlob("cómo estás")
language = b.detect_language()
print(language)
实际结果:es
预期结果:西班牙语
我从这个 link
中获得了语言列表及其缩写
https://developers.google.com/admin-sdk/directory/v1/languages
您使用的代码为您提供了一个符合 ISO 639-2
国际协议的两个字母的缩写。您可以查找这些对应关系的列表(例如 this page 并设置一个方法来仅输入一个并输出另一个,但是假设您在 python 中编程,有人已经为您完成了。
我推荐 pycountry
- 用于此类任务的通用库,其中还包含许多其他标准。使用它解决这个问题的例子:
from textblob import TextBlob
import pycountry
b = TextBlob("நீங்கள் எப்படி இருக்கிறீர்கள்")
iso_code = b.detect_language()
# iso_code = "ta"
language = pycountry.languages.get(alpha_2=iso_code)
# language = Language(alpha_2='ta', alpha_3='tam', name='Tamil', scope='I', type='L')
print(language.name)
并按预期打印 Tamil
。同样适用于西班牙语:
>>> pycountry.languages.get(alpha_2='es').name
'Spanish'
以及您在任何工作中都会遇到的大多数其他语言..
我需要一个语言检测脚本。我尝试了 Textblob 库,它现在给了我语言的两个字母缩写。如何获得完整的语言扩展?
这检测语言有两个字母缩写的语言
from textblob import TextBlob
b = TextBlob("cómo estás")
language = b.detect_language()
print(language)
实际结果:es
预期结果:西班牙语
我从这个 link
中获得了语言列表及其缩写
https://developers.google.com/admin-sdk/directory/v1/languages
您使用的代码为您提供了一个符合 ISO 639-2
国际协议的两个字母的缩写。您可以查找这些对应关系的列表(例如 this page 并设置一个方法来仅输入一个并输出另一个,但是假设您在 python 中编程,有人已经为您完成了。
我推荐 pycountry
- 用于此类任务的通用库,其中还包含许多其他标准。使用它解决这个问题的例子:
from textblob import TextBlob
import pycountry
b = TextBlob("நீங்கள் எப்படி இருக்கிறீர்கள்")
iso_code = b.detect_language()
# iso_code = "ta"
language = pycountry.languages.get(alpha_2=iso_code)
# language = Language(alpha_2='ta', alpha_3='tam', name='Tamil', scope='I', type='L')
print(language.name)
并按预期打印 Tamil
。同样适用于西班牙语:
>>> pycountry.languages.get(alpha_2='es').name
'Spanish'
以及您在任何工作中都会遇到的大多数其他语言..