背景:非计算机专业的
- 我想做一款对 PDF 文件(学术论文的 PDF )内容提取并按照期刊信息进行重命名及内容写入的小软件。
例如:从 ACS 网站(一个化学杂志网站)下载的论文,默认文件名“jm400459m.pdf”。我要做的是依据杂志名称,年份卷号、页码等将其重命名至“J. Med. Chem. 2013, 56, 12, 5094”
当前的工作流程:
- 1 )使用现成的组件从 PDF 文件中提取标题--(使用 docear 的一个组件,org.docear.pdf.PdfDataExtractor )
- 2 )拿标题去 https://api.crossref.org 的接口上查找对应的 DOI 号(会返回多个结果,手动挑出正确值)
- 3 )用 DOI 号去 http://search.crossref.org/上查找对应的 citation 信息(返回 ris 格式)
- 4 )从返回的 ris 格式中挑出杂志名称,年份卷号、页码等信息,组件文件名字符串即“J. Med. Chem. 2013, 56, 12, 5094”
- 5 )使用 ItextPDF 对 PDF 文件内容进行修改,将 DOI 号写入到 PDF 文件中(使用 com.itextpdf.text.pdf.PdfStamper )
- 6 )以此对原 PDF 文件进行重命名(使用 renameTo 操作)
当前存在的问题:
- A )以上步骤 2、3 都需要联网进行查询,会比较耗时(外网,有时还不稳定,需要 5s 以上)
- B )重命名操作( 5,6 在一个动作里)耗时很长,经常需要 30s 以上。(另外比较诡异的是,当前这台电脑即使在 windouws 的文件浏览器中进行“新建文件夹操作”也需要很久,10s 以上,找不到原因!)
- C )当前已经实现从步骤 1-6 一步一步完成,但是耗时较长,请各位大佬给个思路或者关键词,怎样去降低整个操作的时间?
- D )终极目标:对整个文件夹下面的 PDF 文件,成批次进行重命名(即同时添加多个文件,同时查询多个文件的信息,一个文件操作完自动转到下一个)
主要问题是以上 A-D,烦请各位大佬给个建议或者关键词,我自己去搜索
(另:尝试过所谓的性能分析工具,奈何非科班出生,专业背景欠缺完全看不懂。。。)
这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。
https://www.v2ex.com/t/606187
V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。
V2EX is a community of developers, designers and creative people.