Как исключить теги сценария и стиля из текста, извлеченного StormCrawler? - PullRequest
0 голосов
/ 20 октября 2018

Я работаю с Storm Crawler 1.10 и Elastic Search 6.3.x.Я добавил http.content.limit = -1 в конфигурации.Crawler работает хорошо, и когда я проверяю результаты, функции и данные CSS отображаются в индексе.Есть ли возможность применить в фильтре xpath (например: <script> и <style>) в файле parserfilter.json или любые другие предложения по ограничению искателя, чтобы избежать этого.Я поделился некоторыми примерами данных, которые показаны в записях.

 document.getElementById('cloak6258804dfa0d517eaedf4b69a99ed997').innerHTML = '';
                var prefix = '&#109;a' + 'i&#108;' + '&#116;o';
                var path = 'hr' + 'ef' + '=';
                var addy6258804dfa0d517eaedf4b69a99ed997 = '&#97;dm&#105;ss&#105;&#111;ns' + '&#64;';
                addy6258804dfa0d517eaedf4b69a99ed997 = addy6258804dfa0d517eaedf4b69a99ed997 + '&#97;&#117;k' + '&#46;' + '&#111;rg';
                var addy_text6258804dfa0d517eaedf4b69a99ed997 = '&#97;dm&#105;ss&#105;&#111;ns' + '&#64;' + '&#97;&#117;k' + '&#46;' + '&#111;rg';document.getElementById('cloak6258804dfa0d517eaedf4b69a99ed997').innerHTML += '<a ' + path + '\'' + prefix + ':' + addy6258804dfa0d517eaedf4b69a99ed997 + '\'>'+addy_text6258804dfa0d517eaedf4b69a99ed997+'<\/a>'

1 Ответ

0 голосов
/ 22 октября 2018

XPathFilter служит для другой цели - извлечения метаданных из выражений Xpath.Существует также ContentFilter , который ближе к тому, что вам нужно, поскольку он позволяет ограничить область извлечения текста набором xpath, однако он не дает вам способа отфильтровывать определенные теги иоставьте все остальное.

На этом этапе лучше всего использовать ParserBolt на основе Tika: его можно настроить с помощью mapper , которая по умолчанию установлена ​​в identityMapper, но может использоватьо любой другой реализации, предоставленной Tika или вами, см. документацию Tika по HTML mapper .

Не стесняйтесь открыть вопрос о GH, чтобы запросить новый тип parseFilter для исключения некоторых элементов HTML, какэто может быть полезно иметь.У нас есть проблема, связанная с тегами googleon / googleoff , и это может быть способом ее реализации.

РЕДАКТИРОВАТЬ : с тех пор мы выпустили TextExtractor, см. Объявление о выпуске StormCrawler 1.13

...