Вопрос

Я использую HayStack с WHOOSH в качестве Backend для приложения Django.

Есть ли способ просмотреть контент (в простоте формате) индексов, сгенерированных WHOOSH? Я хотел бы посмотреть, какие данные были проиндексированы и как я могу лучше понять, как это работает.

Это было полезно?

Решение

Вы можете сделать это довольно легко из интерактивной консоли Python:

>>> from whoosh.index import open_dir
>>> ix = open_dir('whoosh_index')
>>> ix.schema
<<< <Schema: ['author', 'author_exact', 'content', 'django_ct', 'django_id', 'id', 'lexer', 'lexer_exact', 'published', 'published_exact']>

Вы можете выполнить поисковые запросы прямо на свой индекс и делать все виды забавных вещей. Чтобы получить каждый документ, который я мог сделать это:

>>> from whoosh.query import Every
>>> results = ix.searcher().search(Every('content'))

Если вы хотите все распечатать все (для просмотра или Whatnot), вы можете сделать это довольно легко, используя сценарий Python.

for result in results:
    print "Rank: %s Id: %s Author: %s" % (result.rank, result['id'], result['author'])
    print "Content:"
    print result['content']

Вы также можете вернуть документы непосредственно из WHOOSH в представлении Django (для довольно форматирования, используя систему шаблона Django): обратитесь к документации WHOOSH для получения дополнительной информации: http://packages.python.org/whoosh/index.html..

Другие советы

from whoosh.index import open_dir
ix = open_dir('whoosh_index')
ix.searcher().documents()  # will show all documents in the index.
Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top