pybliometrics: Python-based API-Wrapper to access Scopus¶
pybliometrics is an easy to use Python library to pull, cache and extract data from the Scopus database. It provides one class per API Access Point:
>>> import pybliometrics
>>> pybliometrics.scopus.init() # read API keys
>>> # Document-specific information
>>> from pybliometrics.scopus import AbstractRetrieval
>>> ab = AbstractRetrieval("10.1016/j.softx.2019.100263")
>>> ab.title
'pybliometrics: Scriptable bibliometrics using a Python interface to Scopus'
>>> ab.publicationName
'SoftwareX'
>>> ab.authors
[Author(auid=57209617104, indexed_name='Rose M.E.', surname='Rose',
given_name='Michael E.', affiliation='60105007'),
Author(auid=7004212771, indexed_name='Kitchin J.R.', surname='Kitchin',
given_name='John R.', affiliation='60027950')]
>>>
>>> # Author-specific information
>>> from pybliometrics.scopus import AuthorRetrieval
>>> au2 = AuthorRetrieval(ab.authors[1].auid)
>>> au2.h_index
34
>>> au1 = AuthorRetrieval(ab.authors[0].auid)
>>> au1.affiliation_current
[Affiliation(id=60105007, parent=None, type='parent', relationship='author',
afdispname=None, preferred_name='Max Planck Institute for Innovation and Competition',
parent_preferred_name=None, country_code='deu', country='Germany',
address_part='Marstallplatz 1', city='Munich', state='Bayern',
postal_code='80539', org_domain='ip.mpg.de', org_URL='http://www.ip.mpg.de/')]
>>>
>>> # Affiliation information
>>> from pybliometrics.scopus import AffiliationRetrieval
>>> aff1 = AffiliationRetrieval(au1.affiliation_current[0].id)
>>> aff1.author_count
98
Installation¶
Install the stable version from PyPI:
pip install pybliometrics
or the development version from the GitHub repository (requires git on your system):
pip install git+https://github.com/pybliometrics-dev/pybliometrics
To access the Scopus database you will need API keys which you register at http://dev.elsevier.com/myapikey.html. If your institution subscribes to Scopus, you may need to be in your institution’s network or you need to have an InstToken, which can also be saved in the configuration. Non-subscribers only get limited access to two APIs. See https://dev.elsevier.com/api_key_settings.html for details. On first usage, pybliometrics prompts you for authentication details (API keys and, if necessary, InstToken) and stores them in ~/.config/pybliometrics.cfg (see Configuration).
Classes to interact with the Scopus APIs¶
|
Interaction with the Abstract Retrieval API. |
|
Interaction with the Affiliation Retrieval API. |
|
Interaction with the Affiliation Search API. |
|
Interaction with the Author Retrieval API. |
|
Interaction with the Author Search API. |
|
Interaction with the Citation Overview API. |
|
Interaction with the PlumX Metrics API. |
|
Interaction with the Scopus Search API. |
|
Interaction with the Serial Title API. |
|
Interaction with the Serial Title API. |
|
Interaction with the Subject Classifications Scopus API. |
Citation¶
If pybliometrics helped you getting data for research, please cite our corresponding paper:
Rose, Michael E. and John R. Kitchin: “pybliometrics: Scriptable bibliometrics using a Python interface to Scopus”, SoftwareX 10 (2019) 100263.
Citing the paper helps the development of pybliometrics, because it justifies funneling resources into the development. It also signals that you obtained data from Scopus in a transparent and replicable way.