class pybliometrics.scopus.AffiliationSearch(query, refresh=False, download=True, count=200, integrity_fields=None, integrity_action='raise', verbose=False)[source]

Interaction with the Affiliation Search API.

  • query (str) – A string of the query, e.g. “af-id(60021784)”.
  • refresh (bool or int (optional, default=False)) – 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.
  • count (int (optional, default=200)) – The number of entries to be displayed at once. A smaller number means more queries with each query having less results.
  • download (bool (optional, default=True)) – Whether to download results (if they have not been cached).
  • integrity_fields (None or iterable (default=None)) – Iterable of field names whose completeness should be checked. ScopusSearch will perform the action specified in integrity_action if elements in these fields are missing. This helps avoiding idiosynchratically missing elements that should always be present, such as the EID or the name.
  • integrity_action (str (optional, default="raise")) – What to do in case integrity of provided fields cannot be verified. Possible actions: - “raise”: Raise an AttributeError - “warn”: Raise a UserWarning
  • verbose (bool (optional, default=False)) – Whether to print a downloading progress bar to terminal. Has no effect for download=False.
  • ScopusQueryError – If the number of search results exceeds 5000.
  • ValueError – If the integrity_action parameter is not one of the allowed ones.




The directory for cached results is {path}/STANDARD/{fname}, where path is specified in ~/.scopus/config.ini and fname is the md5-hashed version of query.


A list of namedtuples storing affiliation information, where each namedtuple corresponds to one affiliation. The information in each namedtuple is (eid name variant documents city country parent).

All entries are strings or None. variant combines variants of names with a semicolon.

Raises:ValueError – If the elements provided in integrity_fields do not match the actual field names (listed above).

Return the age of the cached file in days.


Return the modification date of the cached file.


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


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


Return the number of results (works even if download=False).