LibIndic's guesslanguage module may be used to detect the primary language of a text. It works even with text containing mixed languages.
- Clone the repository
git clone https://github.com/libindic/guesslanguage.git
- Change to the cloned directory
cd guesslanguage
- Run setup.py to create installable source
python setup.py sdist
- Install using pip
pip install dist/libindic-guesslanguage*.tar.gz
>>> from libindic.guesslanguage import LangGuess
>>> instance = LangGuess()
>>> text = u"കേരളത്തിലെ എറണാകുളം ജില്ലയിൽ പെരിയാറിന്റെ തീരത്തുള്ള ഒരു ഗ്രാമമാണ് കാലടി காலடி"
>>> text = u"കേരളത്തിലെ എറണാകുളം ജില്ലയിൽ പെരിയാറിന്റെ തീരത്തുള്ള ഒരു ഗ്രാമമാണ് കാലടി காலடி"
>>> instance.guessLanguage(text)
'Malayalam'
>>> for key, value in instance.getScriptName(text).items():
... print("%s : %s" % (key, value))
...
ജില്ലയിൽ : ml_IN
എറണാകുളം : ml_IN
ഒരു : ml_IN
പെരിയാറിന്റെ : ml_IN
காலடி : ta_IN
കേരളത്തിലെ : ml_IN
ഗ്രാമമാണ് : ml_IN
കാലടി : ml_IN
തീരത്തുള്ള : ml_IN
For more details read the docs