Code Monkey home page Code Monkey logo

scopus_caller's Introduction

SCOPUS Caller

linux mac windows

ℹ️ Scopus quickly finds relevant and authoritative research, identifies experts and provides access to reliable data, metrics and analytical tools. Be confident in progressing research, teaching or research direction and priorities — all from one database and with one subscription.

What is SCOPUS API

SCOPUS API allows the users to query its database for all the articles based on a specified keyword(s).
A user needs to create an account on SCOPUS using your university or personal account and generate the SCOPUS key.
The API specification can be seen at this link. Using this API, It is possible to retrieve title,authors, affiliation, DOI, etc of the scientific articles. Further, depending on the access level of the article and authorized API, the article's abstract-text can also be retrieved.

Semantic Scholar API

Semantic Scholar also provides an API to retrieve the article's meta-data. It is possible to obtain abstracts by specifying the DOI of the article. Abstracts for all SCOPUS database articles are not available from Semantic Scholar database.

Installation

  1. Create a virtual environment to install all packages in and activate the environment:

    # create an environment called scopuscaller in this project
    python3 -m venv ~/.scopuscaller
    # activate the environment
    source ~/.scopuscaller/bin/activate
  2. Install the package

    pip install scopus-caller

Obtain the API Key

  1. If you haven't created an account on SCOPUS yet, got to SCOPUS and create a private account or one via your university.
  2. After being logged in, create a new API key here, name the label to your likings and leave the website input field empty (it is not important).
    Carefully read and understand the "API SERVICE AGREEMENT" and "Text and Data Mining (TDM) Provisions", before using the API and the retrieved data. These will be presented to the user while generating the API.
  3. Copy you API key and store it in a text file.

Usage

Import the library and paste the API key. Then run the following code in Python3 terminal or Jupyter notebook.

# import the module
import scopuscaller as sc

# paste the api here
api_key = ""

Parameters of function get_titles.py:

Parameters:

  • api_key (str): Your Elsevier API key for authentication.
  • keywords (list of str): Keywords to search for in article titles and abstracts.
  • year (int, optional): The cut-off year, upto which articles which be retrieved. Default is 2023.

Example:

The following command will search for articles with the search terms transportation, road safety and transfer learning published before 2023 (inclusive).

# Obtain the articles
df = sc.get_titles(api_key, ["transportation", "road safety", "transfer learning"], 2023)

# Obtain the abstracts of the above articles. For abstracts, you need to specify the output of previous step as input and then run the following

df = sc.get_abstracts(df)

Acknowledgements

If you plan to use abstracts for your work, please attribute this GitHub repository:

This work is based on the Scopus-Query base script for obtaining article titles (without abstracts). For this purpose, kindly consider citing the original work:

For examples of how the keywords are used, you can refer to the supplementary information in the following publication:

  • Vishal Mahajan, Nico Kuehnel, Aikaterini Intzevidou, Guido Cantelmo, Rolf Moeckel & Constantinos Antoniou (2022). Data to the People: A Review of Public and Proprietary Data for Transport Models. Transport Reviews, 42(4), 415-440. DOI: 10.1080/01441647.2021.1977414

License

Distributed under the MIT License.

scopus_caller's People

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar

scopus_caller's Issues

Add text-mining examples

Basic examples do text mining and creating visualizations with the data, preferably Jupyter notebooks.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.