Skip to main content
Help us improve Python packaging – donate today!

A Python binding for tokenizers of SQLite Full Text Search

Project Description

codeship build status appveyor build status

sqlitefts-python

sqlitefts-python provides binding for tokenizer of SQLite Full-Text search(FTS3/4). It allows you to write tokenizers in Python.

SQLite has Full-Text search feature FTS3/FTS4 along with some predefined tokenizers. It is easy to use and has enough functionality. Python has a built-in SQLite module, so that it is easy to use and deploy. You don’t need anything else to full-text search.

But… the predefined tokenizers are not enough for some languages including Japanese. Also it is not easy to write own tokenizers. This module provides ability to write your own tokenizers using Python without C compiler by CFFI.

It also has ranking functions based on peewee.

NOTE: all connections using this modules should be explicitly closed. due to GC behavior, it can be crashed if a connection is left open when a program terminated.

Requirements

  • Python 2.7, Python 3.3+, and PyPy2.7, PyPy3.2+
  • CFFI
  • FTS3/4 enabled SQLite3 or APSW (for Windows, you may need to download and replace sqlite3.dll)
    • SQLite 3.11.x have to be compiled with -DSQLITE_ENABLE_FTS3_TOKENIZER to enable 2-arg fts3_tokenizer
    • SQLite 3.10.2 and older versions do not have extra requirements. 2-arg fts3_tokenizer is always avaiable.
    • SQLite 3.12.0 and later vesrions do not have extra requirements. 2-arg fts3_tokenizer can be enabled dynamically.

Licence

This software is released under the MIT License, see LICENSE.

Release history Release notifications

This version
History Node

0.4.9.2

History Node

0.4.9.1

History Node

0.4.9

History Node

0.4.0

History Node

0.3.1

History Node

0.3.0

History Node

0.2

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Filename, size & hash SHA256 hash help File type Python version Upload date
sqlitefts-0.4.9.2-py2.py3-none-any.whl (8.2 kB) Copy SHA256 hash SHA256 Wheel py2.py3 Aug 11, 2017
sqlitefts-0.4.9.2.tar.gz (14.6 kB) Copy SHA256 hash SHA256 Source None Aug 11, 2017

Supported by

Elastic Elastic Search Pingdom Pingdom Monitoring Google Google BigQuery Sentry Sentry Error logging CloudAMQP CloudAMQP RabbitMQ AWS AWS Cloud computing Fastly Fastly CDN DigiCert DigiCert EV certificate StatusPage StatusPage Status page