我需要一个解析器来扫描学术文本,提取引文,并将这些引用解析为它们的组成部分(作者,标题,出版日期等)。
我尝试过Paracite,但速度慢得令人沮丧,并没有产生高质量的结果。
任何语言都可以,但首选Java。
答案 0 :(得分:4)
看看ParsCit
:
这是ParsCit项目的主页,它执行两个 任务:1)引用字符串解析,有时也称为引用 解析或引用提取,以及2)逻辑结构解析 科学文件。它被设计为受监督的机器 使用条件随机场作为学习的学习过程 机制。您可以下载以下代码,在线解析字符串或 将批处理作业发送到我们的Web服务。代码包含两者 训练数据,特征生成器和shell脚本来连接 系统到Web服务(在本网站上使用)。
答案 1 :(得分:2)
我们最近遇到了类似的问题,并最终编写了基于ParsCit的自己的解析器,但使用Wapiti而不是CRF ++作为条件随机字段模型。就像Mike上面提到的那样,基于ML的解析器的问题是获得良好的标记训练数据;为此,我们编写了一个可视化编辑器,可以标记结果(并将其保存为训练数据)。这种方法非常适合解析参考书目。
如果有人有兴趣,我们已在anystyle.io处提供解析器和编辑器。
答案 2 :(得分:1)
项目清单如下: https://forums.zotero.org/discussion/1211/
Cb2bib使用正则表达式http://www.molspaces.com/cb2bib/
Citeseer使用了很多作者姓名和头衔。您可以查看他们的出版物清单
这是一个项目,但是在python中: https://code.google.com/p/pdfssa4met/
另请参阅以下stackoverflow问题: * Extracting information from PDFs of research papers
答案 3 :(得分:1)
您还可以尝试使用这个小工具将学术引文解析为字段:
Citationparser.com仍然是测试版,但2017版本特别适用于期刊文章,但也适用于专着和书籍章节。
该列表不一定是一种风格,但可以是不同官方或非官方风格的混合
您可以浏览参考资料并查看全文,也可以将其导出为尾注文件(.ENL)。我开发此工具仅适用于数百种标题的较小列表。如果粘贴一个包含1000个以上标题的列表,它将运行得慢得多。
答案 4 :(得分:0)
您可以尝试查看索引/搜索库,例如Lucene