Skip to content
nodejs module for listing profile information
JavaScript
Branch: master
Clone or download
Pull request Compare This branch is 6 commits ahead of VT-CHCI:master.
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
test
.gitignore
LICENSE
README.md
index.js
package-lock.json
package.json

README.md

google-scholar-extended

nodejs module for searching google scholar and listing profile information

getting started

  1. npm install google-scholar-extended --save
  2. require the module let scholar = require('google-scholar-extended')
  3. enter a search term
'use strict'

let scholar = require('google-scholar-extended')

scholar.search('chairmouse')
  .then(resultsObj => {
    console.log(resultsObj)
  })

If you would prefer to get all results at once rather than paginated, you can use scholar.all rather than scholar.search to retrieve all of the results. as in:

'use strict'

let scholar = require('google-scholar-extended')

scholar.all('chairmouse')
  .then(resultsObj => {
    console.log(resultsObj) // this will have all ~112 results
  })

Get the information contained in a Google Scholar profile:

'use strict'

let scholar = require('google-scholar-extended')

scholar.profile('ukfCWkAAAAAJ')
  .then(resultsObj => {
    console.log(resultsObj)
  })

resultsObj

the results obj has 4 fields:

  • count: the approximate number of results Google Scholar found for your query
  • results: an array of result objects
    • the result abject has several fields:
      • title
      • url
      • authors
      • description (search only)
      • citedCount
      • citedUrl
      • relatedUrl (search only)
      • venue (profile only)
      • year (profile only)
  • nextUrl: (search only) the URL for the next set of results from google scholar
  • prevUrl: (search only) the URL for the previous set of results from google scholar
  • next: (search only) function that returns a promise which will resolve to a resultsObj containing the next results
  • previous: (search only) function that returns a promise which will resolve to a resultsObj containing the previous results

Example resultsObj for query "ChairMouse"

{
  results: [
    {
      title: 'ChairMouse: leveraging natural chair rotation for cursor navigation on large, high-resolution displays',
      url: 'http://dl.acm.org/citation.cfm?id=1979628',
      authors: [
        {
          name: 'A Endert',
          url: 'https://scholar.google.com/citations?user=_ZIAy3cAAAAJ&hl=en&oi=sra'
        }, {
          name: 'P Fiaux',
          url: ''
        }, {
          name: 'H Chung',
          url: ''
        }, {
          name: 'M Stewart',
          url: 'https://scholar.google.com/citations?user=PE1s-WgAAAAJ&hl=en&oi=sra'
        }, {
          name: 'et al.',
          url: ''
        }
      ],
      description: 'Abstract Large, high-resolution displays lead to more spatially based approaches. In such environments, the cursor (and hence the physical mouse) is the primary means of interaction. However, usability issues occur when standard mouse interaction is applied to  ...',
      citedCount: '16',
      citedUrl: 'https://scholar.google.com/scholar?cites=2800153897409878354&as_sdt=5,47&sciodt=0,47&hl=en&oe=ASCII',
      relatedUrl: 'https://scholar.google.com/scholar?q=related:UpmKQyIl3CYJ:scholar.google.com/&hl=en&oe=ASCII&as_sdt=0,47'
    },
    ...
  ],
  count: 93,
  nextUrl: 'https://scholar.google.com/scholar?start=10&q=chairmouse&hl=en&oe=ASCII&as_sdt=0,47',
  prevUrl: '',
  next: [Function],
  previous: [Function] 
}
You can’t perform that action at this time.