pybliometrics.scopus.SerialTitle

SerialTitle() implements the Serial Title API. It provides basic information on registered serials (also called sources), like publisher and identifiers, but also metrics.

Table of Contents

Documentation

class pybliometrics.scopus.SerialTitle(issn, refresh=False, view='ENHANCED', years=None)[source]

Interaction with the Serial Title API.

Parameters
  • issn (Union[int, str]) – The ISSN or the E-ISSN of the source.

  • refresh (Union[bool, int], optional) – Whether to refresh the cached file if it exists or not. If int is passed, cached file will be refreshed if the number of days since last modification exceeds that value.

    Default: False

  • view (str, optional) – The view of the file that should be downloaded. Allowed values: BASIC, STANDARD, ENHANCED. For details see https://dev.elsevier.com/sc_serial_title_views.html.

    Default: 'ENHANCED'

  • years (Optional[str], optional) – A string specifying a year or range of years (combining two years with a hyphen) for which yearly metric data (SJR, SNIP, yearly-data) should be looked up for. If None, only the most recent metric data values are provided. Note: If not None, refresh will always be True.

    Default: None

Raises

ValueError – If any of the parameters refresh or view is not one of the allowed values.

Return type

None

Notes

The directory for cached results is {path}/{view}/{source_id}, where path is specified in your configuration file.

property aggregation_type

The type of the source.

property citescoreyearinfolist

A list of two tuples of the form (year, cite-score). The first tuple represents the current cite-score, the second tuple represents the tracker cite-score.

property eissn

The electronic ISSN of the source.

property issn

The ISSN of the source.

property oaallowsauthorpaid

Whether under the Open-Access policy authors are allowed to pay.

property openaccess

Open Access status (0 or 1).

property openaccessstartdate

Starting availability date.

property openaccesstype

Open Archive status (full or partial).

property openaccessarticle

Open Access status.

property openarchivearticle

Open Archive status.

property openaccesssponsorname

The name of the Open Access sponsor.

property openaccesssponsortype

The type of the Open Access sponsor.

property openaccessuserlicense

The User license.

property publisher

The publisher of the source.

URL to info site on scopus.com.

URL to the source’s API page.

property sjrlist

The SCImago Journal Rank (SJR) indicator as list of (year, indicator)-tuples. See https://www.scimagojr.com/journalrank.php.

property sniplist

The Source-Normalized Impact per Paper (SNIP) as list of (year, indicator)-tuples. See https://blog.scopus.com/posts/journal-metrics-in-scopus-source-normalized-impact-per-paper-snip.

property source_id

The Scopus ID of the source.

property subject_area

List of named tuples of subject areas in the form (area, abbreviation, code) of the source.

property title

The title of the source.

get_cache_file_age()

Return the age of the cached file in days.

Return type

int

get_cache_file_mdate()

Return the modification date of the cached file.

Return type

str

get_key_remaining_quota()

Return number of remaining requests for the current key and the current API (relative on last actual request).

Return type

Optional[str]

get_key_reset_time()

Return time when current key is reset (relative on last actual request).

Return type

Optional[str]

Examples

You initialize the class with an ISSN or an E-ISSN (works with and without hyphen, but leading zeros are mandatory):

>>> from pybliometrics.scopus import SerialTitle
>>> source = SerialTitle("00368075")

The object has a number of attributes but no methods. For example, information regarding the source itself:

>>> source.title
'Science'
>>> source.publisher
'American Association for the Advancement of Science'
>>> source.issn
'0036-8075'
>>> source.eissn
'1095-9203'
>>> source.source_id
23571

By default, SerialTitle() retrieves only the most recent metrics. If you provide a year or a range of years via the opotional parameter years, SerialTitle() will retrieve information for these years:

>>> source_y = SerialTitle("00368075", years="2017-2019")

You can obtain basic information just by printing the object:

>>> print(source_y)
'Science', journal published by 'American Association for the
Advancement of Science', is active in Multidisciplinary
Metrics as of 2021-07-18:
    SJR:  year value
          2017 14.142
          2018 13.251
          2019 13.11
    SNIP: year value
          2017 7.409
          2018 7.584
          2019 7.535
    ISSN: 0036-8075, E-ISSN: 1095-9203, Scopus ID: 23571

Perhaps most importantly the SCImago Journal Rank (SJR) indicator and the Source-normalized Impact per Paper (SNIP). The information is stored in lists of 2-element tuples with the first element indicating the year the metric was evaluated.

>>> source_y.sjrlist
[(2017, 14.142), (2018, 13.251), (2019, 13.11)]
>>> source_y.sniplist
[(2017, 7.409), (2018, 7.584), (2019, 7.535)]

The fields associated with the source are stored as a list of namedtuples:

>>> source.subject_area
[Subjectarea(area='Multidisciplinary', abbreviation='MULT', code=1000)]

Additionally there are many bits of information on Open Access status which are often empty however.

Downloaded results are cached to speed up subsequent analysis. This information may become outdated. To refresh the cached results if they exist, set refresh=True, or provide an integer that will be interpreted as maximum allowed number of days since the last modification date. For example, if you want to refresh all cached results older than 100 days, set refresh=100. If years is provided, SerialSearch() will always refresh.

Use source.get_cache_file_mdate() to get the date of last modification, and source.get_cache_file_age() the number of days since the last modification.