【问题标题】:Getting StormCrawler to retrieve more body content from a web page and put it into Elasticsearch让 StormCrawler 从网页中检索更多正文内容并将其放入 Elasticsearch
【发布时间】:2019-03-21 07:47:35
【问题描述】:

我有一个概念证明 Stormcrawler 安装指向我们的一个较小的大学网站(https://example.com - 大约 300 页),并且我对 SC 从正文内容中提取的信息量有疑问。该站点在页面顶部有大量菜单,而 SC 只是通过提取菜单内容在它切断之前获得了大部分方式,并且从未真正获得页面的真实内容。有没有办法告诉 SC 从页面中获取更多的正文内容?还是 Elasticsearch 方面的问题?我目前已经按照您发布的教程设置了 SC/ES。

谢谢! 吉姆

【问题讨论】:

    标签: elasticsearch web-crawler stormcrawler


    【解决方案1】:

    可能是由于 http.content.limit 的配置在 config generated by the artefact 中的值为 65K。

    您可以将其设置为 -1,以便保留整个内容。

    我从该站点的一个页面中注意到,主要内容位于 MAIN 元素中。您可以配置 ContentParseFilter 以便它从这些元素中提取文本并将其用作文档的文本(如果找到)。这样您就不会将样板中的文本索引到 ES 中。

    【讨论】:

    • 那么添加这样的内容会有助于 MAIN 元素吗? "pattern4": "//MAIN" 在 ContentParseFilter 下?还是我应该先把它做成pattern1?
    • 我问是因为我对 src/main/resources 文件夹中 parsefilters.json 中的 ContentParseFilter 进行了您提到的更改,然后我运行 mvn clean package 并且更改显示在目标/类中目录。然后我清除了 ES 索引,重新播种状态索引,并重新运行爬网,但我仍然得到与内容相同的菜单信息......开始像这样:"_source": { "content": "Saunders College of Business About College Overview Saunders Mission Accreditation Accreditation & Memberships AACSB Program Goals..." 等等等等……
    • 它在第一次匹配时停止,因此如果任何先前的模式在更宽的范围内匹配,这些将优先。上面的表达式看起来是正确的。
    猜你喜欢
    • 2021-07-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-08-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多