我想从PDF链接中提取PDF的关键字值。我正在抓取一个页面,其中包含指向某些PDF的链接。我想构建一个虚拟文档,我必须将这些文档排入队列。我不想抓取这些PDF的内容,但我只想从这些PDF中提取关键字。当我用inspect source打开这些PDF链接时,它确实有一个关键字字段。但它没有关键字的任何值。它看起来像这样:
<div class="row">
<span data-l10n-id="document_properties_keywords">Keywords:</span> <p id="keywordsField">-</p>
</div>
有没有办法从PDF中提取关键字?我看到这些PDF有关键字,当我下载这些PDF时,Open PDF属性和关键字都有一些价值。
答案 0 :(得分:0)
我不知道开箱即用的方式,但您可以尝试实施抓取工具插件或自己的抓取工具。有一些钩子可以添加提取元数据并将它们添加到索引中,例如在爬虫插件中你可以做这样的事情
@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;
}