bibtex_gen package

Generate BibTeX reference objects from DOIs and strings

Submodules

bibtex_gen.main module

class bibtex_gen.main.BibTexGenerator(mendeley_client_id, mendeley_client_secret)[source]

Bases: object

Get BibTeX objects from DOIs using the Mendeley API

Examples
>>> import bibtex_gen
>>> # Note: these are fake credentials. You need to sign up for a Mendeley account, go to Mendeley Developers,
>>> # and create an "app" which will give you this info.
>>> mendeley_client_id: str = '9871'
>>> mendeley_client_secret: str = 'sdfa4dfDSSDFasda'
>>> btg = bibtex_gen.BibTexGenerator(mendeley_client_id, mendeley_client_secret)
>>> # This object contains all the article data and can be used directly with pyexlatex
>>> bibtex_obj = btg.generate('10.1111/j.1540-6261.2011.01679.x', 'da-engelberg-gao-2011')
>>> # Or, multiple at once with a dict
>>> item_doi_dict = {
>>> 'da-engelberg-gao-2011': '10.1111/j.1540-6261.2011.01679.x',
>>> 'barber-odean-2008': '10.1093/rfs/hhm079',
>>> }
>>> # These objects contain all the article data and can be used directly with pyexlatex
>>> bibtex_objs = btg.generate_from_dict(item_doi_dict)
__init__(mendeley_client_id, mendeley_client_secret)[source]

Initialize self. See help(type(self)) for accurate signature.

generate(doi, item_accessor)[source]
Return type

BibTexEntryBase

generate_from_dict(item_doi_dict)[source]
Return type

List[BibTexEntryBase]

bibtex_gen.main.bib_tex_from_doi(mendeley_session, doi, item_accessor)[source]
Return type

BibTexEntryBase

bibtex_gen.main.item_accessor_doi_dict_to_bib_tex(item_doi_dict, mendeley_client_id, mendeley_client_secret, extra_bibtex_objs=None, extract_from_str=None)[source]

Gets multiple BibTex objects from DOIs using the Mendeley API

Parameters
Return type

List[BibTexEntryBase]

Returns

Examples
>>> # Note: these are fake credentials. You need to sign up for a Mendeley account, go to Mendeley Developers,
>>> # and create an "app" which will give you this info.
>>> mendeley_client_id: str = '9871'
>>> mendeley_client_secret: str = 'sdfa4dfDSSDFasda'
>>> # Keys are name by which reference will be accessed, values are DOIs
>>> item_doi_dict = {
>>> 'da-engelberg-gao-2011': '10.1111/j.1540-6261.2011.01679.x',
>>> 'barber-odean-2008': '10.1093/rfs/hhm079',
>>> }
>>> # These objects contain all the article data and can be used directly with pyexlatex
>>> bibtex_objs = bibtex_gen.item_accessor_doi_dict_to_bib_tex(item_doi_dict, mendeley_client_id, mendeley_client_secret)

bibtex_gen.mendeley module

bibtex_gen.mendeley.authors_str_from_mendeley_doc(mendeley_doc)[source]
Return type

str

bibtex_gen.mendeley.bib_tex_from_mendeley_doc(mendeley_doc, item_accessor)[source]
Return type

BibTexEntryBase