0

Please I have dataset with some articles and I want to add column is_indexed for that I need to search if the article exist on Scopus "https://www.scopus.com/sources.uri" if someone have any idea about that I already try to test with ScopusSearch API but doesn't work.

1 Answers1

0

What doesn't work exactly?

Scopus provides an API endpoint exactly for that:

https://dev.elsevier.com/scopus.html#!/Scopus_Search/ScopusSearch

This is a GET-endpoint where you can submit your search query and an API key. I have tested calling this endpoint with a title of a research paper and my API key and it returned nice results where each entry is in the form of:

 {
        "@_fa": "true",
        "link": [
          {
            "@_fa": "true",
            "@ref": "self",
            "@href": "https://api.elsevier.com/content/abstract/scopus_id/85061154479"
          },
          {
            "@_fa": "true",
            "@ref": "author-affiliation",
            "@href": "https://api.elsevier.com/content/abstract/scopus_id/85061154479?field=author,affiliation"
          },
          {
            "@_fa": "true",
            "@ref": "scopus",
            "@href": "https://www.scopus.com/inward/record.uri?partnerID=HzOxMe3b&scp=85061154479&origin=inward"
          },
          {
            "@_fa": "true",
            "@ref": "scopus-citedby",
            "@href": "https://www.scopus.com/inward/citedby.uri?partnerID=HzOxMe3b&scp=85061154479&origin=inward"
          },
          {
            "@_fa": "true",
            "@ref": "full-text",
            "@href": "https://api.elsevier.com/content/article/eid/1-s2.0-S0268401218307199"
          }
        ],
        "prism:url": "https://api.elsevier.com/content/abstract/scopus_id/85061154479",
        "dc:identifier": "SCOPUS_ID:85061154479",
        "eid": "2-s2.0-85061154479",
        "dc:title": "Understanding the formation mechanism of high-quality knowledge in social question and answer communities: A knowledge co-creation perspective",
        "dc:creator": "Zhang Y.",
        "prism:publicationName": "International Journal of Information Management",
        "prism:issn": "02684012",
        "prism:volume": "48",
        "prism:pageRange": "72-84",
        "prism:coverDate": "2019-10-01",
        "prism:coverDisplayDate": "October 2019",
        "prism:doi": "10.1016/j.ijinfomgt.2019.01.022",
        "pii": "S0268401218307199",
        "citedby-count": "8",
        "affiliation": [
          {
            "@_fa": "true",
            "affilname": "Beihang University",
            "affiliation-city": "Beijing",
            "affiliation-country": "China"
          }
        ],
        "prism:aggregationType": "Journal",
        "subtype": "ar",
        "subtypeDescription": "Article",
        "source-id": "15631",
        "openaccess": "0",
        "openaccessFlag": false
      }

Of course you would need to filter out the resulting JSON if you want exact paper match, as I think Scopus does not provide exact title search, you might want to check other sources like Microsoft Academic Graph / Google Scholar / SemanticScholar / ScienceDirect for that as Scopus is more geared towards author search.

Maybe you have to check if your API key is correct?

mabergerx
  • 1,216
  • 7
  • 19
  • hello, for me i have just paper title I don't have any key please can you share with me your python code and which key do you mean? – Malak Chami Jun 24 '20 at 11:25
  • You need to register for the Scopus developer portal to receive an API key (https://dev.elsevier.com/apikey/manage). I suggest you try your approach first in their interactive Web APIs (https://dev.elsevier.com/interactive.html), there you do not need any Python code yet. If that works for you, you can start making requests from your Python program. – mabergerx Jun 24 '20 at 11:34
  • also I don't know how to use this API Key – Malak Chami Jun 24 '20 at 11:56
  • What do you mean by website URL? And where are you trying to put it? – mabergerx Jun 24 '20 at 11:56
  • i generate the API Key 777588daacf1248120fb0aae676fde03 but where I will put it to get the searched article – Malak Chami Jun 24 '20 at 12:16
  • I think you didn't understand my question or I didn't clarify it my problem is I have a loop for article title and I want to search if this title is existing in scopus – Malak Chami Jun 24 '20 at 12:18
  • Ok, so first I advice you to remove the API key from the comment here as it should not be visible to anyone but you, and secondly, once you have it, you can try out using their SDK: https://github.com/ElsevierDev/elsapy. – mabergerx Jun 24 '20 at 13:06
  • They provide very clear examples, you can adapt one of those: https://raw.githubusercontent.com/ElsevierDev/elsapy/master/exampleProg.py Note that as I said, they do not have exact title search so you would have to improvise a little. – mabergerx Jun 24 '20 at 13:07