2016-05-10 6 views
0

Мне нужна альтернатива Google Custom Search для веб-сайта, который я обслуживаю, это должно быть то, что сканирует веб-сайт, индексирует его, разрешает использование приоритетов, а затем разрешает поисковые запросы через REST или что-то подобное, и возвращать XML или JSON и т. д. Он должен запускаться на экземпляре Windows Server.Получение эскизов в результатах поиска OpenSearchServer

Итак, я работаю с http://www.opensearchserver.com/ и, похоже, делает трюк, но не может, для жизни меня, выяснить, как получить уменьшенные изображения в результатах? Я искал документацию и читал все, что мог, но не могу понять, как это сделать (или как обдумать это).

Я просматриваю стандартные веб-страницы, и все они имеют метаданные эскизов, которые, как я предполагаю, должны быть проанализированы как-то для результатов и включены в результаты JSON?

Любые указатели на всех были бы очень полезны, спасибо!

ответ

0

Я понял это, если кто-то еще борется, вот как я это сделал. Ответ в документах, это просто не , что простой.

Read: http://www.opensearchserver.com/documentation/faq/crawling/how_to_extract_specific_information_from_web_pages.md - он содержит метод

Предположим, вы создали индекс «гусеничный веб».

Предполагая, что вы используете мета миниатюру, как это:

<meta name="thumbnail" content="http://my_cdn.com/news/images/29637.jpg"> 

Перейти в Schema/Fields. Добавьте новое поле под названием «thumbnail» с индексом «нет», «Да», «Нет», «Анализатор текста», «Копия пустого». Сохраните это.

Теперь перейдите в список схем/парсеров, отредактируйте парсер HTML. Перейдите в 'field mapping', теперь добавьте новое regex для миниатюры в html. Мы сопоставляем «htmlSource» с миниатюрой с соответствующим регулярным выражением.

Мой несовершенны регулярное выражение (который работает, хотя) является:

HtmlSource -> связаны: миниатюру -> захвачена:

(?s)<meta name="thumbnail" content="(.*?)"> 

Теперь сохраните это и перейти ползать/ручное сканирование, ввести url, который имеет миниатюру, а затем проверьте, появляется ли поле в списке ниже, когда оно читается. Если вы не проверите свое регулярное выражение и убедитесь, что вы действительно сохранили изменения Parser HTML.

Чтобы получить большой палец в результатах, просто добавьте имя_поль в JSON, отправляемый с запросом:

"returnedFields": [ " 
    "url", 
    "thumbnail" 
],