Мне нужно реализовать полнотекстовый поиск в pdf-документе, используя Elasticsearch
плагин ingest. Я получаю пустой массив хитов, когда пытаюсь найти слово someword
в pdf-документе.Как проиндексировать PDF-файл, используя Elasticsearch ingest-attachment plugin?
//Code for creating pipeline
PUT _ingest/pipeline/attachment
{
"description" : "Extract attachment information",
"processors" : [
{
"attachment" : {
"field" : "data",
"indexed_chars" : -1
}
}
]
}
//Code for creating the index
PUT my_index/my_type/my_id?pipeline=attachment
{
"filename" : "C:\\Users\\myname\\Desktop\\bh1.pdf",
"title" : "Quick",
"data": "e1xydGYxXGFuc2kNCkxvcmVtIGlwc3VtIGRvbG9yIHNpdCBhbWV0DQpccGFyIH0="
}
//Code for searching the word in pdf
GET /my_index/my_type/_search
{
"query": {
"match": {
"data" : {
"query" : "someword"
}
}
}
Если открыть PDF в программе просмотра PDF, вы в состоянии найти «someword» в нем и найти матч? – Alcanzar
@Alcanzar Да, он ищет слово. – Ashley
Это похоже на дубликат http://stackoverflow.com/questions/37861279/how-to-index-a-pdf-file-in-elasticsearch-5-0-0-with-ingest-attachment-plugin - обратите внимание, что ваш оператор PUT помещает определенные данные в файл. Для передачи конкретных данных файла вам нужно использовать завиток или что-то в этом роде. «Данные», которые вы вводите, - «Lorem ipsum dolor sit amet» - если вы ищете Lorem, вы найдете результат – Alcanzar