Edu-Stats: Academic Statistics Parser (v.2.0.0)

Official academic profiles do not provide APIs to show the relevant statistics on the other websites (e.g. the personal websites).
Edu-Stats is a parser to extract the scholar details of academicians such as h-Index, citations, etc.
These extracted data can be used and presented on the personal websites by an embedded JavaScript.
This code is developed by Kaveh Bakhtiyari.

NOTE:
This code is open-source, and it can be used for non-commercial purposes.


The end-user of this code should read the terms and conditions of the host provider (e.g. Google Scholar, Scopus, etc.), which he/she is trying to scrap its data, and they should follow their terms and coditions.
The developer(s) of this code do(es) not take any resposibility for misusing this code.
The end-users should monitor their requests to the servers in order to prevent any unnecessary traffic/attack on the target websites.
Access to the hosted JavaScript on this website is restricted to prevent generation of high traffic on the target websites.

Known Issues


Version History

v2.0.0: 13 February 2018
Mendeley parser added.
Scopus function and variables rewritten.

v1.9.1: 24 April 2017
JSON output is added.

v1.9: 20 April 2017
PHP version is developed.
ResearchGate parser is removed.
Google Scholar bug is fixed.
Scopus bug is fixed.

v1.8: 8 April 2015
ResearchGate bug is fixed.

v1.7: 11 January 2015
ResearcherID parser is added.

v1.6: 10 January 2015
SSL (HTTPS) bug is fixed on Google Scholar.

v1.5: 6 January 2015
Prefix attribute is added for multi-extraction.

v1.0: 2 January 2015
Initial version


Edu-Stats Supported Profiles


Usage

The script generator should be placed in the HEAD section of the HTML code as below:

<script src="edu-stats.php?google=<GOOGLE_PARAMETER> &scopus=<SCOPUS_PARAMETER> &reid=<ResearcherID_PARAMETER> &mendeley=<MENDELEY_PARAMETER> &prefix=<OPTIONAL_PREFIX> &output=<javascript|json> "></script>


The above code receives 3 optional query string parameters as below.
At least one of the parameters should be set.

Parameter Description Sample
google (optional) Google Scholar Profile ID
In your profile URL (http://scholar.google.com/citations?user=7ftCdTQAAAAJ&hl=en), "user" value is the Profile ID.
google=7ftCdTQAAAAJ
scopus (optional) Scopus Author ID
In your profile URL (http://www.scopus.com/authid/detail.url?authorId=54413825200), "authorId" value is the Profile ID.
scopus=54413825200
reid (optional) ResearcherID
In your profile URL (http://www.researcherid.com/rid/E-5776-2011), the last part of the URL is the id.
reid=E-5776-2011
mendeley (optional) Mendeley
In your profile URL (https://www.mendeley.com/profiles/kaveh-bakhtiyari/stats/), the name part of the URL is the id. Make sure that the profile is publicly accessible in the privacy settings.
mendeley=kaveh-bakhtiyari
prefix (optional) A prefix to be used for variables to differentiate different scholars.
LIMIT:
10 alphanumeric characters.
prefix=asd123
output (optional) javascript (Default)
This parameter will generate the output in javascript variables.
json
This parameter generates JSON output for easier parsing, which is recommended for AJAX functions.
JSON does not support prefix parameter.
output=json

Variables & Demo

Please fill the following fields to test the demo version. At least one of the following fields should be completed.

Google Scholar ID: Scopus ID: ResearcherID ID: Mendeley ID:

In JavaScript output, once the script has been included, each item is stored in a seperate variable as below, and they are accessible via JavaScript.

Variable Value
Google_ID n/a
Google_URL n/a
Google_Citations n/a
Google_hIndex n/a
Google_i10Index n/a
Scopus_ID n/a
Scopus_URL n/a
Scopus_Documents n/a
Scopus_hIndex n/a
Scopus_CoAuthors n/a
Scopus_CitationDocuments n/a
ResearcherID_ID n/a
ResearcherID_URL n/a
ResearcherID_Documents n/a
ResearcherID_articleCountForMetrics n/a
ResearcherID_Citations n/a
ResearcherID_AverageCitations n/a
ResearcherID_hIndex n/a
ResearcherID_lastUpdatedString n/a
Mendeley_ID n/a
Mendeley_URL n/a
Mendeley_Media n/a
Mendeley_hIndex n/a
Mendeley_Citations n/a
Mendeley_Readers n/a
Mendeley_Views n/a


JSON output:
"output" parameter generates JSON output which is suitable for parsing and AJAX functions. A sample JSON output is shown below:


n/a
				

For instance, in order to print the Google Scholar h-Index on a page, it is only required to write its variable on a page.


document.write (Google_hIndex);
				

Prefix:
If "prefix" is set, its value will be added to the begining of all variable names. This can be set to prevent variable similarities (duplicated names) in JavaScript output, specially, when there are multiple profile calls.
For instance, if the prefix has been set to "123abc", then Google h-Index variable would be changed as follows:


document.write (123abc_Google_hIndex);
				

Source Code

You can find the source code in Github repository at https://github.com/kavehbc/Edu-Stats.

PHP edition:
In order to use the PHP edition, make sure to enable "php_curl.dll" and "php_openssl.dll" extensions in php.ini.


Copyright © 2018. Kaveh Bakhtiyari. All rights reserved.