Я просматриваю новостные веб-сайты с помощью Stormcrawler (v 1.16) и сохраняю данные в Elasticsearch (v 7.5.0). Мой файл crawler-conf выглядит как файлы stormcrawler . Я использую кибану для визуализации. Мои проблемы:
- При сканировании новостного веб-сайта мне нужны только URL-адреса содержания статьи, но я тоже получение URL-адресов объявлений, других вкладок на веб-сайте. Что и где мне нужно внести изменения Ссылка Kibana
- если мне нужно получить только определенные c вещи из URL-адреса (например, только заголовок или только контент), как мы можем это сделать.
EDIT: Я думал добавить поле в индекс контента. Итак, я внес изменения в src / main / resources / parsefilter. json, ES_IndecInit. sh и Crawler-conf.yaml. XPATH, который я добавил, правильный. Я добавил как
"parse.pubDate":"//META[@itemprop=\"datePublished\"]/@content"
в parsefilter.
parse.pubDate =PublishDate
в crawler-conf и добавлено
PublishDate": {
"type": "text",
"index": false,
"store": true}
в свойствах ES_IndexInit. sh. Но все же я не получаю поля с именем PublishDate в kibana или elasticsearch. ES_IndexInit. sh сопоставление выглядит следующим образом:
{
"mapping": {
"_source": {
"enabled": false
},
"properties": {
"PublishDate": {
"type": "text",
"index": false,
"store": true
},
"content": {
"type": "text",
"fields": {
"keyword": {
"type": "keyword",
"ignore_above": 256
}
}
},
"description": {
"type": "text",
"store": true
},
"domain": {
"type": "text",
"fields": {
"keyword": {
"type": "keyword",
"ignore_above": 256
}
}
},
"host": {
"type": "keyword",
"store": true
},
"keywords": {
"type": "text",
"fields": {
"keyword": {
"type": "keyword",
"ignore_above": 256
}
}
},
"title": {
"type": "text",
"store": true
},
"url": {
"type": "keyword",
"store": true
}
}
}
}