首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何使用IBM Watson Explorer提取PDF URL的关键字属性?

如何使用IBM Watson Explorer提取PDF URL的关键字属性?
EN

Stack Overflow用户
提问于 2017-02-24 08:28:19
回答 1查看 278关注 0票数 2

我想从PDF链接中提取PDF的关键字值。我正在爬行一个页面,其中包含一些PDF的链接。我想建立一个虚拟文档,在那里我必须将这些PDF入队。我不想抓取这些PDF的内容,但我只想从这些PDF中提取关键字。当我使用inspect source打开这些PDF链接时,它确实有一个关键字字段。但是它没有任何关键字的值。它看起来是这样的:

代码语言:javascript
复制
 <div class="row">
 <span data-l10n-id="document_properties_keywords">Keywords:</span> <p id="keywordsField">-</p>
 </div>

有没有办法从PDF中提取关键字?我看到那些PDF有关键字,当我下载那些PDF的时候,Open PDF属性和关键字都有一些值。

参考:https://www.ibm.com/support/knowledgecenter/SS8NLW_10.0.0/com.ibm.swg.im.infosphere.dataexpl.engine.tut.virt.doc/t_cc-build-virt-docs.html

EN

回答 1

Stack Overflow用户

发布于 2017-03-12 19:38:28

我不知道一种开箱即用的方式,但你可以尝试实现一个爬虫插件或你自己的爬虫。有一些钩子可以添加提取元数据并将其添加到索引中,例如,在爬虫插件中,您可以执行以下操作

代码语言:javascript
复制
@Override
    public CrawledData updateDocument(CrawledData crawledData) throws CrawlerPluginException {

        List<FieldMetadata> metadataList = crawledData.getMetadataList();
        String MyPDFProperty= getFromOriginalContent(crawledData.getOriginalContents());
//getFromOriginalContent method you need to implement for your PDF document

          if (metadataList == null) {
             metadataList = new ArrayList<FieldMetadata>();
          }                       

FieldMetadata pdfFieldMetaData = new FieldMetadata("pdfextractedpropertyr", MyPDFProperty);
                metadataList.add(pdfFieldMetaData);
                crawledData.setMetadataList(metadataList);

            } catch (ClientServicesException e) {

                logger.error(e.getMessage());
                throw new CrawlerPluginException(e);
            }
          }
          return crawledData;
    }
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/42428717

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档