程序员最近都爱上了这个网站  程序员们快来瞅瞅吧!  it98k网:it98k.com

本站消息

站长简介/公众号

  出租广告位,需要合作请联系站长

+关注
已关注

分类  

暂无分类

标签  

暂无标签

日期归档  

暂无数据

使用Python将BibTex文件转换为数据库条目

发布于2019-09-05 15:04     阅读(705)     评论(0)     点赞(24)     收藏(3)


给定一个bibTex文件,我需要将相应的字段(作者,标题,日记等)添加到MySQL数据库中的表中(使用自定义模式)。

在做了一些初步研究之后,我发现存在可以用于将bib文件转换为xml的Bibutils我最初的想法是将其转换为XML,然后在python中解析XML以填充字典。

我的主要问题是:

  1. 有没有更好的方法可以进行此转换?
  2. 有没有一个库直接解析bibTex并给我python中的字段?

(我确实找到了bibliography.parsing,它在内部使用了bibutils,但是没有太多文档,我觉得很难让它工作)。


解决方案


老问题,但我现在正在使用Pybtex做同样的事情,它有一个内置的解析器:

from pybtex.database.input import bibtex

#open a bibtex file
parser = bibtex.Parser()
bibdata = parser.parse_file("myrefs.bib")

#loop through the individual references
for bib_id in bibdata.entries:
    b = bibdata.entries[bib_id].fields
    try:
        # change these lines to create a SQL insert
        print b["title"]
        print b["journal"]
        print b["year"]
        #deal with multiple authors
        for author in bibdata.entries[bib_id].persons["author"]:
            print author.first(), author.last()
    # field may not exist for a reference
    except(KeyError):
        continue


所属网站分类: 技术文章 > 问答

作者:黑洞官方问答小能手

链接:https://www.pythonheidong.com/blog/article/92867/819c350a2a8b528537aa/

来源:python黑洞网

任何形式的转载都请注明出处,如有侵权 一经发现 必将追究其法律责任

24 0
收藏该文
已收藏

评论内容:(最多支持255个字符)