Skip to content

dkiesow/Zotero-Workflows

Repository files navigation

ZotSearchNotes
ZotGroupNotes
ZotCollectionNotes

These are basic scripts I am using to facilitate my Zotero document workflow.

ZotSearchNotes allows the creation of exported research notes based on a search term
ZotGroupNotes allows exported research notes from a given Zotero group
ZotCollectionNotes allows exported research notes from a specific Zotero collection

Setup for all three is the same:

Requirements:
Zotero https://www.zotero.org/
Zotfile http://zotfile.com/
PyZotero https://pypi.org/project/Pyzotero/
Python 3

In Zotero you need some familiarity with the API set-up and how to get an API key from the website
Your userID is also needed and available on the site. Create a key and find your ID here:
https://www.zotero.org/settings/keys

Go to the ZotFile site and install the Add-on into Zotero
Open up any PDF and highlight the text and/or leaving comments via the PDF annotation tools
After annotating a PDF, right click:manage attachments:extract annotations
A notes file called "Extracted Annotations" will appear as a child attachment to the parent item

On your local machine, you will need to install PyZotero and all of the related steps to have a working
Python development environment

Download config_sample.py and rename to config.py
Enter the required info into config.py

Download ZotSearchNotes.Py
Uncomment line 14 - # searchQuery = sys.argv[1]
If you leave it commented - the searchQuery you put into config.py will be all it ever looks for

Run the script
% python ZotGroupNotes.py {searchterm}

After a minute or two an RTF file should appear in the folder you put in config.py

At the moment you can only search on single terms "innovation" not "journalism innovation"
The RTF encoding is liable to fail on the extracts of some notes.
My Python coding skills are limited, so there are a lot of iterating through lists and other things
that are really inefficient. Oh well.

Download ZotGroupNotes.Py
Enter the required info into config.py
To find a groupID go to Zotero.com and navigate to a group. The ID is in the URL

Run the script
% python ZotCollectionNotes.py

After a minute or two an RTF file should appear in the folder you put in config.py. it will
contain the extracted notes for the library you indicated in config.py

Download ZotCollectionNotes.Py
Enter the required info into config.py
To find a groupD go to Zotero.com and navigate to a group. The ID is in the URL

Run the script
% python ZotCollectionNotes.py {"Collection Name"}

You must type the collection name exactly and wrap it in quotes.
Currently, it will search only in the specified collection, not in any subcollections. You will need to run a
separate query for each subcollection you need.

After a minute or two an RTF file should appear in the folder you put in config.py. it will
contain the extracted notes for the collection you indicated in the command line parameter.

FYI: Items are currently limited to 100 per query.

About

Scripts for working with Zotero

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages