All Projects → scrapinghub → python-cld2

scrapinghub / python-cld2

Licence: other
Python bindings for CLD2.

Programming Languages

python
139335 projects - #7 most used programming language
C++
36643 projects - #6 most used programming language
Dick Sites (and others) at Google graciously provided a new version
2.0 of the compact language detector, here:

  https://code.google.com/p/cld2/

and I ([email protected]) created the Python bindings and
ported the C++ test case to test.py.

This has been tested on Ubuntu 12.10, with both Python 2.7.3 and
3.2.3.

To build:

  * First checkout cld2 and run internal/compile_libs.sh.  This will
    create both libcld2.so (detects 83 languages) and libcld2_full.so
    (detects 163 languages).  Install those libraries somewhere on
    your LD_LIBRARY_PATH, for example copy them into /usr/lib64.

  * Define the CLD2_PATH environment variable to point to where you
    checked out the CLD2 sources: export CLD2_PATH='/path/to/cld2'

  * python setup.py build

  * python setup_full.py build

Note that all Python sources work with both python 2.x and 3.x so if
you want to install for python3.x just repeat the above steps using
python3 (or whatever python command runs python 3.x in your
environment).

To test both the small and full language tables:

  * python test.py

The test produces a lot of output, due to the test cases testing the
debug flags; this is normal.  As long as it says OK in the end then
the tests passed.

To install:

  * python setup.py install (as root)

  * python setup_full.py install (as root)

For documentation run:

  * python -c "import cld2; help(cld2.detect)"

NOTE: you must pass only valid UTF-8 bytes to the detect function,
otherwise you can hit segmentation fault or get incorrect results.
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].