论文管理工具–Zotero

  • A+
所属分类:有好物
摘要这一篇介绍一款文献管理软件,Zotero。不同于 Mendeley,这款软件是开源的,并且有丰富的插件系统。这一篇会详细介绍 Zotero 软件的使用。

简介

之前介绍了文献管理工具,Mendeley(论文管理工具–Mendeley),但是实际使用下来总是有些不便。特别是文件同步的时候。所以尝试使用以下 Zotero 来进行文献管理。这一篇文章会介绍关于 Zotero 的一些使用。包括文件的导入,一些插件的使用。

Zotero 的一些优点如下所示:

  • 软件本身完全免费并且开源,不存在盗版问题
  • 注册后本身只包括 300M 空间同步,但支持 WebDAV 同步,例如 Dropbox 和坚果云等
  • 官方的反馈论坛比较活跃,有问题可以快速得到反馈
  • 从网站和期刊文章等提取保存出版物数据检索
  • 拖入 PDF 的出版物数据准确率高
  • 可以和 Word,LibreOffice 集成,方便文献进一步的使用管理
  • 强大的第三方插件系统

Zotero 学习路径

下面是 Zotero 的学习路径(来自文献管理神器 Zotero 学习路径指南),这篇文章尽量都对其有所涉及。

论文管理工具--Zotero

参考资料

论文管理工具--Zotero

 

Zotero 内容的添加

使用浏览器插件进行内容的添加

我们可以在Zotero Download下载 Chrome 的插件,这样可以方便我们进行内容的插入。当我们浏览网页的时候,插件会根据内容不同有不同的显示,我们直接进行保存即可。

论文管理工具--Zotero

之后再进入 Zotero 就可以看到自己保存的网页的内容了。

论文管理工具--Zotero

 

使用本地文件进行拖入

如果我们已经下载好了 PDF 版本文献,只要直接拖入到应用中即可,Zotero 会自动识别 PDF 文档中的元数据。

和大多数文献管理软件相比,Zotero 有一个非常大的优势就是支持将任意格式的附件添加到某个条目中,例如这里的附件可以是 Excel 格式的电子表格,可以是文献中提到的某一个网页地址,也可以是你自己和文献主题相关的电子实验记录,甚至你还可以将文章中提到的相关代码打包为压缩文件后进行添加。

结合ZotFile 的文件管理 和 WebDAV 的同步功能,我们还可以将这些相关资料在多个设备间进行同步,这样就极大的方便了我们对文献相关的各种资料进行整理。

直接放入的本地文件,会放在 storage 目录下。我们可以配合 ZotFile 使用,将文件转移到指定的目录下。选择我们需要转移的文件,「右键->Manage Attachments->Rename Attachments」,这样文件就会转移到指定的目录下。

论文管理工具--Zotero

这个时候在 Zotero 看指定文献的时候,文件上面会有一个链接的标志。

论文管理工具--Zotero

Zotero 的文献和笔记管理

分类与标签

在使用 Zotero 的时候,我们可以新建不同的分类(这个类似于文件夹)来放置不同的类型的文件。直接使用右键就可以新建分类,和新建子分类。如下所示为「新建分类」

论文管理工具--Zotero

除了设置分类之后,可以为每个文献添加若干个标签。这里建议标签的使用维度不和集合重合。例如,我有个一个叫做「lncRNA」的目录集合,就不应该再建立一个「lncRNA」的标签,这时的标签可以考虑应用维度或者重要性维度。如使用 P1、P2 和 P3 标注文献的重要性,使用「中期」「答辩」等标注一个文献的用途。

每个标签可以设置对应颜色,这个色块也会自动显示在每一个条目的开头,方便查看,一目了然。下面简单看一下如何设置标签,和标签的颜色。首先选中一篇文章,进行标签的添加;接着可以修改标签的颜色;最后就可以在文章标题前面看到标签的颜色了。

论文管理工具--Zotero

 

Zotero 的简单使用

Zotero 文件夹设置

我们需要在 「首选项->高级->文件和文件夹」中进行目录的设置。

  • 首先设置「链接附件的根目录」,这个目录下可以放置我们的 pdf,设置了这个目录之后,Zotero 会使用相对路径来进行保存,这样我们在更换电脑之后,也可以进行访问。
  • 接着设置「数据存储位置」,这个包含 Zotero 的数据库文件。

下面是我的这两个部分的配置的详情。

论文管理工具--Zotero

 

Zotero 文献同步

在「编辑->首选项->同步」中,我们注册 Zotero 账号,并可以设置 WebDAV 来进行同步。这里我们将 Zotero 于 Onedrive 进行同步。下面我们详细介绍。

我们要将 Zetero 的「根目录」设置在 onedirve 中,这样所有的附件都可以使用 onedrive 自动进行同步。我们需要注意,下面的数据存储位置不需要放在 onedrive 进行同步。

论文管理工具--Zotero

关于数据同步,我们可以使用 Zotero 自带的同步即可。这样更换电脑,也可以很快进行同步。

 

Zotero 相关插件使用

插件系统是 Zotero 作为开源软件的独特优势,你可以通过 官方插件网站 进行查看。下面介绍几款比较常用的 Zotero 的插件。我们可以在「工具->插件」中进行插件的安装。

Zotero Connector - Chrome 浏览器插件

这一款插件安装之后,就可以在浏览网页的时候,将需要的内容保存到 Zotero 中。如下图所示,浏览不同网页的时候,插件显示会有区别,如果是 html 会直接将 html 保存下来。(十分推荐使用

论文管理工具--Zotero

ZotFile-自动 pdf 重命名

在官网,Zotfile-Download,进行软件的下载(十分推荐使用)。在网上下载的 pdf 名称都会比较随机,我们可以在 ZotFile 设置好名称的规则,就可以自动进行修改。首先在「工具-->ZotFile Preferences」中进行设置:

论文管理工具--Zotero

接着我们进行如下的配置:

  • Source Folder for Attaching new Files可设置为 Zetero 的存储文件的目录,也就是 storage 文件夹。这个时候如果有新的文件加入,会自动进行转换;
  • Location of Files设置为链接附件的根目录,会存储文件的目录,我们可以修改成上面 Zetero 中的数据存储的位置;
  • Renaming Rules中附件重命名可设置为{%y-}{%j-}{%t}

下面是文件夹的基础设置,包括 Source FolderLocation of Files 的设置:

论文管理工具--Zotero

同样,重命名的方式也是可以自定义的,可以在 Renaming Rules 来进行设置。

论文管理工具--Zotero

之后还是在浏览器插件的位置,可以对 pdf 进行保存。

论文管理工具--Zotero

之后,ZotFile 会直接对文件进行名称的修改。

论文管理工具--Zotero

如果是直接拖动放入的文件,我们需要「右键->Rename Attachments」即可将文件进行修改名称,同时转移到目标文件夹内。

论文管理工具--Zotero

Zotero better bibtex

Zotero better bibtex 可以帮助我在使用 latex 写作的时候快速的导入文献。该插件的官网为,BETTER BIBTEX FOR ZOTERO

 

中文文献抓取-Jasminum

在我们使用 Zotero 进行文献管理的时候,默认的情况下中文文献是不会抓取信息的。这个时候我们可以下载 Zotero 插件 Jasminum 来进行更新,插件的链接为,Jasminum Download。安装完毕之后,我们只需要「右键」中文文献,点击「抓取知网元数据」即可。

论文管理工具--Zotero

 

Zotero 一些其他的

清除 Zotero 中 storage 中空文件夹

在 Zotero 中使用 Zotfile 时,常会生成一些空文件夹留在<数据存储位置>/storage中,虽然不占空间,但依然有用户想要删除它们。这些“空”文件夹通常并不是真的没有文件。附件进入 storage 后,Zotero 缓存全文生成 .zotero-ft-cache,而后附件被 Zotfile 移动至其他位置,留下只包含.zotero-ft-cache

我们可以通过 Python 脚本自动删除这些空的文件夹。下面的脚本可以在任意位置运行。

  1. #!/usr/bin/env python
  2. # coding: utf-8
  3. from __future__ import print_function
  4. import configparser
  5. import re
  6. import shutil
  7. import sys
  8. try:
  9.     from pathlib import Path
  10. except ImportError:
  11.     from pathlib2 import Path
  12. def get_zotero_storage_dir():
  13.     '''
  14.     Get the Zotero storage dir and in PosixPath type
  15.     '''
  16.     profile_dirs = {
  17.         'darwin': Path.home() / 'Library/Application Support/Zotero',
  18.         'linux': Path.home() / '.zotero/zotero',
  19.         'linux2': Path.home() / '.zotero/zotero',
  20.         'win32': Path.home() / 'AppData/Roaming/Zotero/Zotero'
  21.     }
  22.     profile_dir = profile_dirs[sys.platform]
  23.     config = configparser.ConfigParser()
  24.     config.read('{}'.format(profile_dir / 'profiles.ini'))
  25.     configs_loc = profile_dir / config['Profile0']['Path'] / 'prefs.js'
  26.     configs = configs_loc.read_text()
  27.     zotero_data_pat = re.compile(
  28.         r'user_pref\("extensions.zotero.dataDir",\ "(?P<zotero_data>.+)"\);')
  29.     zotero_data_dir = Path(zotero_data_pat.search(configs).group('zotero_data'))
  30.     storage_dir = zotero_data_dir / 'storage'
  31.     return storage_dir
  32. def get_empty_folders(zotero_storage_dir):
  33.     '''
  34.     Get a list of empty dir in string type.
  35.     '''
  36.     return [
  37.         p.as_posix() for p in zotero_storage_dir.iterdir()
  38.         if (not p.is_file()) and (
  39.             not len([f for f in list(p.iterdir()) if f.name[0] != '.']))
  40.     ]
  41. if __name__ == '__main__':
  42.     zotero_storage_dir = get_zotero_storage_dir() # 可以找到 storage 的位置
  43.     dirs_to_remove = get_empty_folders(zotero_storage_dir) # 找到其中空的文件夹
  44.     try:
  45.         import click
  46.         print('The following folders contain no attachments:')
  47.         print('\n  '.join([''] + dirs_to_remove))
  48.         if click.confirm('Do you want remove them?', default=True):
  49.             [shutil.rmtree(p, ignore_errors=Truefor p in dirs_to_remove]
  50.     except ImportError:
  51.         print(
  52.             'The following folders containing no attachments will be removed:')
  53.         print('\n  '.join([''] + dirs_to_remove))
  54.         [shutil.rmtree(p, ignore_errors=Truefor p in dirs_to_remove]

这部分内容参考自链接为 Zotero 删除 storage 中的“空”文件夹

 

  • 微信公众号
  • 关注微信公众号
  • weinxin
  • QQ群
  • 我们的QQ群号
  • weinxin

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: