更新:使用 @滏阳河边捉蚯蚓 https://zhuanlan.zhihu.com/p/41297136上获取系统PDF文件和zotero.sqlite文件的代码,在此感谢!
在zotero的library中删除参考文献条目后,有时PDF不会同步删除,尤甚是安装了zotfile插件后,添加参考文献条目后,对应的PDF附件会移动后zotfile指定的目录中,删除条目后PDF也不会同步删除,因此写了个脚本。运行后,如果目录中某个PDF没有对应的参考文献条目,这个PDF就会被转移到备份的文件夹中。
其原理是读取PDF目录中PDF文件的文件名,如a.pdf,b.pdf....,再读取zoter.sqlite文件中的附件目录,如果后者不包括a.pdf,则移动PDF目录中的a.pdf到备份的目录中。
将代码复制为.py文件,如zot.py,在命令提示符下运行:
python zot.py
运行时需要关闭zotero,自己指定选择备份的目录。
如果有多余的PDF,则提示已备份***.pdf到备份目录中。
如果移动错了,将备份文件目录中的文件自己复制回去即可。如果确认无误,再自行删除备份的文件。
# -*- coding: utf-8 -*-
"""
Spyder Editor
"""
from __future__ import print_function
from os import walk, remove
import os
impor