Whoosh Index Viewer
-
25-09-2019 - |
Вопрос
Я использую 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.