Skip to main content

ppf.jabref

ppf.jabref provides a python interface to JabRef SQL databases. It maps database relations to python classes using SQLAlchemy. Also, ppf.jabref provides tools to parse the data stored inside the database tables.

Using ppf.jabref

ppf.jabref relies on SQLAlchemy for database access. All that ppf.jabref adds to this is a data model which makes sqlalchemy understand how a JabRef database is structured (by providing classes Entry and Field).

A simple example that queries all entries and prints a selection of the fields looks like this:

    from sqlalchemy import create_engine
    from sqlalchemy.orm import sessionmaker
    from ppf.jabref import Entry, File

    engine = create_engine('<your connection string here>', echo=False)
    Session = sessionmaker(bind=engine)
    session = Session()

    q = session.query(Entry)
    for entry in q:
        print(entry.fields['author'], '\t',
            entry.fields['title'], '\t',
            entry.fields['year'], '\t', end='')

        files = File.from_string(entry.fields['file'])
        for i in range(len(files)):
            f = files[i]
            print(f.path, '\t', end='')

The first 6 lines are setup code to import required packages and to set up the database connection. The query then uses ppf.jabref's Entry class to obtain all Entries (=references) in the JabRef database. The for-loop shows how to access fields and uses the File class to find out where the documents linked to this entry are stored.

Installation

ppf.jabref is available via pypi:

pip install ppf.jabref

Change Log

  • 0.1.2: Fix problem with versioning
  • 0.1.1: Fix sqlalchemy deprecation warning, docstrings
  • 0.1.0: Initial release

Metadata

Release files for ppf-jabref 0.1.2

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Built distribution (wheel)

Table of built distributions (wheels) for ppf-jabref 0.1.2
File Interpreter ABI Platform
ppf_jabref-0.1.2-py3-none-any.whl Python 3 none any Details

Release files / ppf_jabref-0.1.2-py3-none-any.whl

Download URL ppf_jabref-0.1.2-py3-none-any.whl
Size 5.8 kB
Tags Python 3
SHA-256 checksum
How to use checksums
d76f76abd61a140fb7e4b06a269cfb8682a0c106312f084027e80d99e839d829
BLAKE2b-256 checksum
How to use checksums
7b43efde5788bd19a20f1d815fdb1fd48b853b6f837106788072f3f74f930948
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.11.11

Release history Release notifications | RSS feed

This release

0.1.2 This release

1 release file

0.1.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page