如何将GB7714-2015格式的参考文献表转换为bib文件

1. 背景

latex使用参考文献是一个自动化的工作,但建立和维护bib文件其实一个长期的积累活动。
有些参考文献的bibtex数据是存在,比如从各类学术网站上可以下载到。但有些网站并没有提供这个,比如cnki就不提供bib文件信息。
一种解决方法是使用zotero进行抓取,然后保存到bib文件中。
除此之外,其实还有一种从参考文献著录文本转换为bib文件的途径。
因为cnki会提供当前文献的GB7714-2015格式的著录文本,如果我们将这一文本复制下来,就可以通过一个工具将其转换为bib文件。下面就要讲讲怎么做到这个事情。

由于cnki提供的GB7714-2015格式的参考文献著录文本就是一个长字符串,而bib文件其实也是个文本文件,所以这个转换实质就是个文本处理的工具。这个工具我在biblatex-gb7714-2015宏包发布的时候就提供了,但其实用的人很少,也没有什么反馈,所以都快忘记了。直到前一段,师弟也有这样的需求,那么我就把它再拿出来分享一下。

2. 文献著录文本的获取

cnki的著录文本可以从文献右侧的双引号得到:

得到:


我们可以复制:GB7714-2015格式的文本到文件中。

当文献是批量的时候也可以,多选然后用导出分析:


导出结果为

将其存到一个文本文件b.tex中。

3. 转换工具的获取

转换工具名为:gb7714texttobib.pl

如果用户安装有texlive,那么这个工具有的,直接使用或者复制到文件夹中使用均可。若系统中没有,则可以由上面的链接下载。

注意这个工具是perl写的,实话说,我也是当时学习biber的时候顺便学的perl,现在时间这么久过去都有点忘了。但这个工具是经过测试的。

如果无法直接使用那么可能是系统中perl版本比较老,可以下个strawberry perl安装一下。

4. 转换的方法

工具在命令行中执行,命令格式为:

perl gb7714texttobib.pl in=textfilename out=bibfilename

我们已经有了gb格式的参考文献文本,在b.TXT文件中。如果转换后输出的文件名为c.BIB,那么使用如下命令进行转换:

perl gb7714texttobib.pl in=b.TEX out=c.BIB

对于b.TXT文件

[1]王清斌,王文亮,赵睿.基于改进XGBoost算法的船舶事故风险与类型预测[J/OL].安全与环境学报:1-9[2021-09-04].https://doi.org/10.13637/j.issn.1009-6094.2021.1040.
[2]聂仁清,唐瑭,张小轶,张瑾.两型肾癌的共同标志物筛选及机制研究(英文)[J/OL].生物化学与生物物理进展:1-21[2021-09-04].http://kns.cnki.net/kcms/detail/11.2161.Q.20210902.1856.002.html.
[3]樊思含.基于改进BP神经网络的音乐流派分类[J].软件工程,2021,24(09):17-20.
[4]李梦楠,汪明艳.基于机器学习的情感分析方法及应用研究综述[J].软件工程,2021,24(09):21-23+8.
[5]刘娜,熊安元,张强,刘雨佳,战云健,刘一鸣.强对流天气人工智能应用训练基础数据集构建[J].应用气象学报,2021,32(05):530-541.
[6]Getman Rachel Rose,Green Denise Nicole,Bala Kavita,Mall Utkarsh,Rawat Nehal,Appasamy Sonia,Hariharan Bharath. Machine Learning (ML) for Tracking Fashion Trends: Documenting the Frequency of the Baseball Cap on Social Media and the Runway[J]. Clothing and Textiles Research Journal,2021,39(4):3-5.

转换结果为:

c.BIB文件:

% Encoding: UTF-8
@article{ref-1-1-王清斌,
author    = {王清斌 and 王文亮 and 赵睿},
title     = {基于改进XGBoost算法的船舶事故风险与类型预测},
urldate   = {2021-09-04},
url       = {https: //doi. org/10. 13637/j. issn. 1009-6094. 2021. 1040},
}
@article{ref-2-2-聂仁清,
author    = {聂仁清 and 唐瑭 and 张小轶 and 张瑾},
title     = {两型肾癌的共同标志物筛选及机制研究(英文)},
urldate   = {2021-09-04},
url       = {http: //kns. cnki. net/kcms/detail/11. 2161. Q. 20210902. 1856. 002. html},
}
@article{ref-3-3-樊思含,
author    = {樊思含},
title     = {基于改进BP神经网络的音乐流派分类},
journal   = {软件工程},
date      = {2021},
volume      = {24},
number      = {09},
pages     = {17-20},
}
@article{ref-4-4-李梦楠,
author    = {李梦楠 and 汪明艳},
title     = {基于机器学习的情感分析方法及应用研究综述},
journal   = {软件工程},
date      = {2021},
volume      = {24},
number      = {09},
pages     = {21-23+8},
}
@article{ref-5-5-刘娜,
author    = {刘娜 and 熊安元 and 张强 and 刘雨佳 and 战云健 and 刘一鸣},
title     = {强对流天气人工智能应用训练基础数据集构建},
journal   = {应用气象学报},
date      = {2021},
volume      = {32},
number      = {05},
pages     = {530-541},
}
@article{ref-6-6-GRR,
author    = {{Getman Rachel Rose } and { Green Denise Nicole } and { Bala Kavita } and { Mall Utkarsh } and { Rawat Nehal } and { Appasamy Sonia } and { Hariharan Bharath}},
title     = {Machine Learning (ML) for Tracking Fashion Trends: Documenting the Frequency of the Baseball Cap on Social Media and the Runway},
journal   = {Clothing and Textiles Research Journal},
date      = {2021},
volume      = {39},
number      = {4},
pages     = {3-5},
}

5. 转换工具使用的补充说明

有同学可能没有看懂上面的使用方法,这里再补充解释一下。

gb7714texttobib.pl 工具实际就是一个perl脚本,要执行perl脚本,需要perl环境(perl执行程序)。对于linux通常系统会自带的。对于windows系统通常系统不自带,所以需要有这个环境,如果安装使用texlive,那么就已经有了,不需要再操作了,因为texlive也依赖于perl环境,安装过程中就已经具备了perl环境。如果没有使用texlive,那么需要额外安装一个perl环境,比如strawberry perl,网上一搜就有,安装一下。

在完成脚本和环境准备后,那么就是执行脚本的问题。

假设有一个文件夹下放了一个a.txt文件包含了国标格式的文献信息需要转换。如果gb7714texttobib.pl也在这个文件夹下,那么在当前目录下的终端(命令行)执行命令(即终端|命令行当前的目录就是这个放了a.txt文件的目录):

perl gb7714texttobib.pl in=a.txt out=a.BIB

就可以了。

如果gb7714texttobib.pl放到了其它地方(比如d:/gb7714texttobib.pl),那么指定这个路径即可:

perl d:/gb7714texttobib.pl in=a.txt out=a.BIB

小结

这里提供了一种从GB7714-2015格式的参考文献著录文本到bib文件的转换工具,丰富了bib文件生成手段。如果从cnki的角度看,由于它提供了不同格式的输出,比如NoteExpress的格式,其实我们也可以下载相关软件,将NoteExpress的格式转换为bib文件,那也是一条不错的路径。

如何将GB7714-2015格式的参考文献表转换为bib文件相关推荐

  1. 使用EndNote导出GB/T 7714—2015格式的参考文献

    1.官网下载样式模板 网址:https://endnote.com/downloads/styles/ 在页面的第一个框中输入GBT7714,点击search,显示找到两个结果,下载 Chinese ...

  2. python提取word参考文献_写作相关 | word中参考文献转化为.bib格式全流程

    因为在latex中编辑不方便修改和审阅,所以一般都会选择在word中编辑文本后,再放入latex中进行排版.但是如果参考文献和引用不是用endnotes等管理好的话,在导入参考文献到latex中就比较 ...

  3. excel xml mysql_数据库表转换为xml格式,excel转换为xml格式文件

    c#把sql数据库表转换为xml文件 1.连接sql数据库 public bool Open() { try { if (sqlconn == null) { sqlconn = new SqlCon ...

  4. SCI论文参考文献(bib文件)格式

    SCI论文参考文献(bib文件)格式 前言 期刊论文 会议论文 书籍 网上文章 前言 最近写 IEEE 的论文需要引用参考文献,但是谷歌学术上的 bib 引用有各种不同的格式,也有很多字段,如果不加选 ...

  5. latex自动生成中文目录_texpad: 中文输出+自动参考文献生成(bib+bst)

    写在前面:本文仅记录自己在家无聊,接触了下LaTeX. 本文是在MAC下使用Texpad+MacTeX,进行LaTeX编辑, a.输出中文问题,此问题参考自:texpad中如何使用中文?(mac OS ...

  6. IEEE 参考文献bib文件最常引用模板

    科技论文写作时,参考文献经常采用bib文件的形式引用.当被引论文是期刊论文.会议论文还是著作,格式是不一样的,此处以IEEE模板为例列举常用的文献引用格式! //期刊论文引用 @article{IEE ...

  7. latex在参考文献表中不输出网址和doi

    我使用的是biblatex-gb7714-2015宏包,使用说明手册可以点链接详细查看. 输出参考文献表的时候,不论中文英文始终带有文献的网址,如下图所示: 实际上论文的格式中大多是不需要输出文献的网 ...

  8. latex中生成表格形式的参考文献表

    latex中生成表格形式的参考文献表 1. 引言 一般数据中的参考文献表从内容上看是文本字符串,从格式上看是由一个一个段落构成的.通常latex中的参考文献表是一个由list环境构成的文本块,内部的每 ...

  9. LaTex 自动生成IEEE格式的参考文献

    因为IEEE要求的参考文献格式跟平时用到的有所不同,研究了一阵子才知道怎么弄,记录一下,怕忘了. 首先下一个IEEE的论文模板,进入官网后,点击下载ieeeconf.zip,解压后里面的就是latex ...

最新文章

  1. java n个点 凸多边形_hrbustoj 1291 点在凸多边形内
  2. 美国要求台积电、三星45天内主动交出商业数据,不配合将采取必要行动
  3. 人民的名义中,为什么蔡成功的贷款这么难?
  4. Java开发热门前沿知识!成功从小公司跳槽进蚂蚁定级P6
  5. [你必须知道的.NET]第三十回:.NET十年(下)
  6. doremi服务器可以导出文件,Doremi服务器检查与IMB 的通信-放映技术论坛
  7. FPGA时序约束、时序分析(一)
  8. django 1.8 官方文档翻译: 1-2-4 编写你的第一个Django应用,第4部分
  9. Find a way BFS
  10. 【现代软件工程】第一次作业——词频统计
  11. 用电子签章实现企业招投标安全高效,流程一体化
  12. win10cmd重置系统_win10命令行恢复出厂设置
  13. (一)RFB协议概述
  14. S3C2440 蜂鸣器 汇编语言,S3C2440的基础功能模块实现过程
  15. 3dmax:3dmax中的快捷键集合大全(分门别类,建议收藏)
  16. 8大基本数据类型各占多少字节和一些单位常识
  17. 曾国藩《挺经》卷十七藏锋
  18. 【Fragment】FragmentManager和FragmentTransaction使用
  19. 一文搞懂PMO如何推动流程规范的落地及常见问题如何解决?【管理有度4】
  20. SQL Server 实验二 创建数据库

热门文章

  1. Linux的目录结构
  2. 奥的斯服务器状态显示,奥的斯服务器查看故障和清除方法
  3. mysql unique_subquery_MySQL,一条两层subquery的坑爹优化
  4. AI 配音软件|网站推荐
  5. ClipCursor与GetClipCursor 用法
  6. Hadoop文件复制到分布式文件系统报错:.xml.COPYING_ could only be written to 0 of the 1 minReplication nodes.
  7. 他用8000元互联网创业起家,如今年营业额500万
  8. 软件免费与开源,从Axcrypt说起
  9. 小米12S Pro和小米12Pro天玑版区别 两者配置对比
  10. LINUX时间戳转换