Существует ли чистый Python Lucene?

Использование PDO и MYSQLi является хорошей практикой для предотвращения инъекций SQL, но если вы действительно хотите работать с функциями и запросами MySQL, было бы лучше использовать

mysql_real_escape_string

$unsafe_variable = mysql_real_escape_string($_POST['user_input']);

Есть больше возможностей для предотвращения этого: например, идентификация - если ввод представляет собой строку, число, символ или массив, есть так много встроенных функций для обнаружения этого. Кроме того, было бы лучше использовать эти функции для проверки входных данных.

is_string

$unsafe_variable = (is_string($_POST['user_input']) ? $_POST['user_input'] : '');

is_numeric

$unsafe_variable = (is_numeric($_POST['user_input']) ? $_POST['user_input'] : '');

И гораздо лучше использовать эти функции для проверки входных данных с помощью mysql_real_escape_string.

41
задан icedwater 5 September 2013 в 04:21
поделиться

7 ответов

Свист является новым проектом, который подобен lucene, но является чистым Python.

37
ответ дан A. Coady 27 November 2019 в 00:48
поделиться

Единственный один чистый Python (не включающий даже C расширение) ищет решение, о котором я знаю, Nucular. Это медленно (намного медленнее, чем PyLucene) и нестабильно все же.

Мы переместились от находящегося в PyLucene домашнего испеченного поиска и индексирующий к Solr, но YMMV.

6
ответ дан zgoda 27 November 2019 в 00:48
поделиться

Я недавно нашел pyndexter. Это предоставляет абстрактный интерфейс всевозможным механизмам/индексаторам полнотекстового поиска бэкенда. И это поставлется с реализацией чистого Python по умолчанию.

Эти вещи могут быть катастрофически медленными хотя в Python.

4
ответ дан Ali Afshar 27 November 2019 в 00:48
поделиться

Для некоторых приложений переоценен чистый Python. Смотрите на Xapian.

3
ответ дан Ignacio Vazquez-Abrams 27 November 2019 в 00:48
поделиться

lupy был lucene портом к чистому Python. lupy люди предлагают, чтобы Вы использовали PyLucene. Извините. Возможно, можно использовать источники Java в сочетании с Jython.

2
ответ дан Yuval F 27 November 2019 в 00:48
поделиться

+1 к ответам Xapian и Pyndexter.

Хорек на самом деле записан в C с привязкой Ruby на вершине. Чистая поисковая система Ruby была бы еще медленнее, чем чистый Python один. Я хотел бы видеть, что "кто-то еще" пишет уровень Cython/Pyrex для интерфейса Python, чтобы Рыться, но не сделаю этого сам потому что почему беспокойство, когда существует привязка Python для Xapian.

2
ответ дан Van Gale 27 November 2019 в 00:48
поделиться

После недель поиска этого я нашел хорошее решение Python: repoze.catalog. Это не строго только для Python, потому что это использует ZODB для устройства хранения данных, но это кажется лучшей зависимостью мне, чем что-то как SOLR.

1
ответ дан Ali Afshar 27 November 2019 в 00:48
поделиться
Другие вопросы по тегам:

Похожие вопросы: