在即将发布的版本中,用于爬虫插件和客户连接器功能的捆绑 JVM 将过渡到 IBM Semeru Runtimes 第 21 版。 如果您的爬虫插件或自定义连接器使用了与 IBM SDK、Java Technology Edition, Version 8 和 IBM Semeru Runtimes, Version 21 不兼容的任何功能,您需要修改代码以确保与未来版本(如 Discovery 5.2.x 及更高版本)兼容。

有关 JVM 迁移,请参阅以下页面:

定制爬虫插件

Discovery 通过 SDK,您可以选择构建自己的爬虫插件。Java 现在,使用搜寻器插件,可以快速针对用例开发相关解决方案。 从安装的 Discovery 集群中可以下载 SDK。 有关更多信息,请参阅获取搜寻器插件 SDK 包。

IBM Cloud Pak for Data IBM Software Hub

此信息仅适用于已安装的部署。

与 IBM Watson® Discovery 配合使用的任何定制代码都由开发者负责;IBM 对开发者创建的任何定制代码不提供支持。

搜寻器插件支持以下功能:

  • 更新所搜寻文档的元数据列表
  • 更新所搜寻文档的内容
  • 排除所搜寻文档
  • 参考爬虫配置,屏蔽密码值
  • 在 Discovery 用户界面中显示通知消息
  • 向 crawler pod 控制台输出日志信息

不过,crawler 插件不能支持以下功能:

  • 将一个所搜寻文档拆分成多个文档
  • 将多个文档中的内容合并到一个文档中
  • 修改访问控制表

搜寻器插件需求

确保在您计划用于使用此 SDK 开发 crawler 插件的开发服务器上安装了以下项:

  • Java SE Development Kit (JDK) 1.8 或更高版本
  • Gradle
  • cURL
  • sed (流编辑器)

获取搜寻器插件 SDK 包

  1. 登录到 Discovery 集群。

  2. 输入以下命令获取 crawler pod 名称:

    oc get pods | grep crawler
    

    以下示例显示了样本输出。

    wd-discovery-crawler-57985fc5cf-rxk89     1/1     Running     0          85m
    
  3. 输入以下命令获取 SDK 软件包名称,将 {crawler-pod-name} 替换为步骤 2 中获取的 crawler pod 名称:

    oc exec {crawler-pod-name} -- ls -l /opt/ibm/wex/zing/resources/ | grep wd-crawler-plugin-sdk
    

    以下示例显示了样本输出。

    -rw-r--r--. 1 dadmin dadmin 35575 Oct  1 16:51 wd-crawler-plugin-sdk-${build-version}.zip
    
  4. 输入以下命令以将 SDK 包复制到主机服务器,需要将 {build-version} 替换为上一步中的构建版本号:

    oc cp {crawler-pod-name}:/opt/ibm/wex/zing/resources/wd-crawler-plugin-sdk-${build-version}.zip wd-crawler-plugin-sdk.zip
    
  5. 根据需要,将 SDK 包复制到开发服务器。

构建搜寻器插件包

  1. 提取 SDK 压缩文件。
  2. 在 src/ 中实现插件逻辑。 确保依赖关系以 build.gradle 编写。
  3. 输入 gradle packageCrawlerPlugin 以创建插件包。 所生成的插件包为 build/distributed/wd-crawler-plugin-sample.zip。