Google Scholar API
Unlock a wealth of academic resources by scraping Google Scholar via our SERP API.
To tap into this specialized capability, append the engine=google_scholar
parameter to your request.
Google Scholar stands as a premier search engine dedicated to academic and scholarly content. By leveraging our SERP API, you gain immediate and efficient access to real-time search results from Google Scholar. To harness this, simply align your request to engage the google_scholar
engine. Furthermore, the Google Scholar API provides a plethora of customization options through specific parameters, ensuring tailored and precise results for your academic inquiries.
Google Scholar API Integration Examples
We will use following URL as an example for this request:
https://serp.shifter.io/v1?api_key=<YOUR_API_KEY>&engine=google_scholar&q=python
Ready to Use Google Scholar Scraping Scripts
curl --request GET --url "https://serp.shifter.io/v1?api_key=YOUR_API_KEY%7D&engine=google_scholar&q=python"
const http = require("https");
const options = {
"method": "GET",
"hostname": "serp.shifter.io",
"port": null,
"path": "/v1?api_key=YOUR_API_KEY%7D&engine=google_scholar&q=python",
"headers": {}
};
const req = http.request(options, function (res) {
const chunks = [];
res.on("data", function (chunk) {
chunks.push(chunk);
});
res.on("end", function () {
const body = Buffer.concat(chunks);
console.log(body.toString());
});
});
req.end();
import http.client
conn = http.client.HTTPSConnection("serp.shifter.io")
conn.request("GET", "/v1?api_key=YOUR_API_KEY%7D&engine=google_scholar&q=python")
res = conn.getresponse()
data = res.read()
print(data.decode("utf-8"))
<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://serp.shifter.io/v1?api_key=YOUR_API_KEY%7D&engine=google_scholar&q=python",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}
package main
import (
"fmt"
"net/http"
"io/ioutil"
)
func main() {
url := "https://serp.shifter.io/v1?api_key=YOUR_API_KEY%7D&engine=google_scholar&q=python"
req, _ := http.NewRequest("GET", url, nil)
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := ioutil.ReadAll(res.Body)
fmt.Println(res)
fmt.Println(string(body))
}
HttpResponse<String> response = Unirest.get("https://serp.shifter.io/v1?api_key=YOUR_API_KEY%7D&engine=google_scholar&q=python")
.asString();
var client = new RestClient("https://serp.shifter.io/v1?api_key=YOUR_API_KEY%7D&engine=google_scholar&q=python");
var request = new RestRequest(Method.GET);
IRestResponse response = client.Execute(request);
require 'uri'
require 'net/http'
require 'openssl'
url = URI("https://serp.shifter.io/v1?api_key=YOUR_API_KEY%7D&engine=google_scholar&q=python")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
http.verify_mode = OpenSSL::SSL::VERIFY_NONE
request = Net::HTTP::Get.new(url)
response = http.request(request)
puts response.read_body
Google Scholar Parameters
#1: Query Parameter
Parameter | Type | Description |
---|---|---|
|
| The keywords that you are searching for on Google (the query). |
#2: Localisation Parameters
Parameter | Type | Description |
---|---|---|
|
| One or multiple languages to limit your search to. Values are formatted as |
|
| The language you want to use for your Google search. List of supported languages |
#3: Pagination Parameters
Parameter | Type | Description |
---|---|---|
|
| The offset of the Google Search Results. Represents the number of results that you want to skip. |
|
| The number of results returned on each page. |
#4: Advanced Filtering Parameters
Parameter | Type | Description |
---|---|---|
|
| Represents if you would like to include citations or not. Set it to |
|
| This parameter allows you to filter or not the adult content. It can take the values |
|
| Parameter defines unique ID for an article to trigger Cited By searches. |
|
| The parameter defines the year from when you want the results to be included. |
|
| The parameter defines the year until which you want the results to be included. |
|
| Represents if it should include only abstract results (set on |
Response Example
{
"search_parameters": {
"google_url": "https://scholar.google.com/scholar?q=python&sourceid=chrome&ie=UTF-8",
"engine": "google_scholar",
"google_domain": "scholar.google.com",
"device": "desktop",
"query": "python"
},
"search_information": {
"organic_results_state": "Results for exact spelling",
"total_results": 1440000,
"time_taken_displayed": 0.03,
"query_displayed": "python"
},
"organic_results": [
{
"type": "book",
"title": "Python tutorial",
"link": "http://lib.21h.io/library/G7B3RFY7/download/GBMFTU3C/Python_3.8.3_Docs_.pdf",
"result_id": "mPZrr4kzeywJ",
"snippet": "Python applications will often use packages and modules that don't come as part of the standard library. Applications will sometimes need a specific version of a library, because the application may require that a particular bug has been fixed or the application may be …",
"publication_info": {
"summary": "G Van Rossum, FL Drake Jr - 1995 - lib.21h.io"
},
"inline_links": {
"cited_by": {
"total": 992,
"link": "https://scholar.google.com/scholar?cites=3205212226250864280&as_sdt=5,47&sciodt=0,47&hl=en",
"cites_id": "3205212226250864280"
},
"related_pages_link": "/scholar?q=related:mPZrr4kzeywJ:scholar.google.com/&scioq=python&hl=en&as_sdt=0,47",
"versions": {
"total": 90,
"link": "https://scholar.google.com/scholar?cluster=3205212226250864280&hl=en&as_sdt=0,47",
"cluster_id": "3205212226250864280"
}
},
"position": 1
},
{
"type": "book",
"title": "Programming python",
"link": "https://books.google.com/books?hl=en&lr=&id=c8pV-TzyfBUC&oi=fnd&pg=PR11&dq=python&ots=n55H7QXWTW&sig=NiSpjE-XScQIJA6AW_Adp3-nKmI",
"result_id": "hAkjjWUqTAsJ",
"snippet": "Programming Pythonfocuses on advanced uses of the Python programming/scripting language, which has evolved from an emerging language of interest primarily to pioneers, to a widely accepted tool that traditional programmers use for real day-to-day development …",
"publication_info": {
"summary": "M Lutz - 2001 - books.google.com"
},
"inline_links": {
"cited_by": {
"total": 731,
"link": "https://scholar.google.com/scholar?cites=814072248295164292&as_sdt=5,47&sciodt=0,47&hl=en",
"cites_id": "814072248295164292"
},
"related_pages_link": "/scholar?q=related:hAkjjWUqTAsJ:scholar.google.com/&scioq=python&hl=en&as_sdt=0,47",
"versions": {
"total": 7,
"link": "https://scholar.google.com/scholar?cluster=814072248295164292&hl=en&as_sdt=0,47",
"cluster_id": "814072248295164292"
}
},
"position": 2
},
{
"type": "pdf",
"title": "Pattern for python",
"link": "https://www.jmlr.org/papers/volume13/desmedt12a/desmedt12a.pdf",
"result_id": "04lXz42eH6kJ",
"snippet": "Pattern is a package for Python 2.4+ with functionality for web mining (Google+ Twitter+ Wikipedia, web spider, HTML DOM parser), natural language processing (tagger/chunker, n- gram search, sentiment analysis, WordNet), machine learning (vector space model, k-means …",
"publication_info": {
"summary": "T De Smedt, W Daelemans - The Journal of Machine Learning Research, 2012 - jmlr.org",
"authors": [
{
"name": "T De Smedt",
"link": "https://scholar.google.com/citations?user=8VBuRDwAAAAJ&hl=en&oi=sra",
"author_id": "8VBuRDwAAAAJ"
},
{
"name": "W Daelemans",
"link": "https://scholar.google.com/citations?user=21RjEWwAAAAJ&hl=en&oi=sra",
"author_id": "21RjEWwAAAAJ"
}
]
},
"inline_links": {
"cited_by": {
"total": 408,
"link": "https://scholar.google.com/scholar?cites=12186633448594049491&as_sdt=5,47&sciodt=0,47&hl=en",
"cites_id": "12186633448594049491"
},
"related_pages_link": "/scholar?q=related:04lXz42eH6kJ:scholar.google.com/&scioq=python&hl=en&as_sdt=0,47",
"versions": {
"total": 28,
"link": "https://scholar.google.com/scholar?cluster=12186633448594049491&hl=en&as_sdt=0,47",
"cluster_id": "12186633448594049491"
}
},
"position": 3
},
{
"title": "Python for scientific computing",
"link": "https://ieeexplore.ieee.org/abstract/document/4160250/",
"result_id": "y_I3vcmcXH0J",
"snippet": "Python is an excellent\" steering\" language for scientific codes written in other languages. However, with additional basic tools, Python transforms into a high-level language suited for scientific and engineering code that's often fast enough to be immediately useful but also …",
"publication_info": {
"summary": "TE Oliphant - Computing in science & engineering, 2007 - ieeexplore.ieee.org",
"authors": [
{
"name": "TE Oliphant",
"link": "https://scholar.google.com/citations?user=kUTSKZwAAAAJ&hl=en&oi=sra",
"author_id": "kUTSKZwAAAAJ"
}
]
},
"inline_links": {
"cited_by": {
"total": 3318,
"link": "https://scholar.google.com/scholar?cites=9033267342875292363&as_sdt=5,47&sciodt=0,47&hl=en",
"cites_id": "9033267342875292363"
},
"related_pages_link": "/scholar?q=related:y_I3vcmcXH0J:scholar.google.com/&scioq=python&hl=en&as_sdt=0,47",
"versions": {
"total": 11,
"link": "https://scholar.google.com/scholar?cluster=9033267342875292363&hl=en&as_sdt=0,47",
"cluster_id": "9033267342875292363"
}
},
"position": 4
},
{
"title": "Pingouin: statistics in Python",
"link": "https://joss.theoj.org/papers/10.21105/joss.01026.pdf",
"result_id": "J8H_4rDwE-0J",
"snippet": "Python is currently the fastest growing programming language in the world, thanks to its ease-of-use, fast learning curve and its numerous high quality packages for data science and machine-learning. Surprisingly however, Python is far behind the R programming …",
"publication_info": {
"summary": "R Vallat - Journal of Open Source Software, 2018 - joss.theoj.org",
"authors": [
{
"name": "R Vallat",
"link": "https://scholar.google.com/citations?user=XH8IG2UAAAAJ&hl=en&oi=sra",
"author_id": "XH8IG2UAAAAJ"
}
]
},
"inline_links": {
"cited_by": {
"total": 179,
"link": "https://scholar.google.com/scholar?cites=17083262454059745575&as_sdt=5,47&sciodt=0,47&hl=en",
"cites_id": "17083262454059745575"
},
"related_pages_link": "/scholar?q=related:J8H_4rDwE-0J:scholar.google.com/&scioq=python&hl=en&as_sdt=0,47",
"versions": {
"total": 5,
"link": "https://scholar.google.com/scholar?cluster=17083262454059745575&hl=en&as_sdt=0,47",
"cluster_id": "17083262454059745575"
}
},
"position": 5
},
{
"type": "book",
"title": "Python reference manual",
"link": "http://www.cs.cmu.edu/afs/cs.cmu.edu/project/gwydion-1/OldFiles/OldFiles/python/Doc/ref.ps",
"result_id": "oEYg8p8rRYYJ",
"snippet": "Python is a simple, yet powerful, interpreted programming language that bridges the gap between C and shell programming, and is thus ideally suited for\\throw-away programming\" and rapid prototyping. Its syntax is put together from constructs borrowed from a variety of …",
"publication_info": {
"summary": "G Van Rossum, FL Drake Jr - 1995 - cs.cmu.edu"
},
"inline_links": {
"cited_by": {
"total": 1628,
"link": "https://scholar.google.com/scholar?cites=9675187340437374624&as_sdt=5,47&sciodt=0,47&hl=en",
"cites_id": "9675187340437374624"
},
"related_pages_link": "/scholar?q=related:oEYg8p8rRYYJ:scholar.google.com/&scioq=python&hl=en&as_sdt=0,47",
"versions": {
"total": 38,
"link": "https://scholar.google.com/scholar?cluster=9675187340437374624&hl=en&as_sdt=0,47",
"cluster_id": "9675187340437374624"
}
},
"position": 6
},
{
"title": "Python for scientists and engineers",
"link": "https://ieeexplore.ieee.org/abstract/document/5725235/",
"result_id": "O9xuKGYXJ5gJ",
"snippet": "Python has arguably become the de facto standard for exploratory, interactive, and computation-driven scientific research. This issue discusses Python's advantages for scientific research and presents several of the core Python libraries and tools used in …",
"publication_info": {
"summary": "KJ Millman, M Aivazis - Computing in Science & Engineering, 2011 - ieeexplore.ieee.org",
"authors": [
{
"name": "KJ Millman",
"link": "https://scholar.google.com/citations?user=RH1sMcQAAAAJ&hl=en&oi=sra",
"author_id": "RH1sMcQAAAAJ"
}
]
},
"inline_links": {
"cited_by": {
"total": 755,
"link": "https://scholar.google.com/scholar?cites=10963757545389218875&as_sdt=5,47&sciodt=0,47&hl=en",
"cites_id": "10963757545389218875"
},
"related_pages_link": "/scholar?q=related:O9xuKGYXJ5gJ:scholar.google.com/&scioq=python&hl=en&as_sdt=0,47",
"versions": {
"total": 12,
"link": "https://scholar.google.com/scholar?cluster=10963757545389218875&hl=en&as_sdt=0,47",
"cluster_id": "10963757545389218875"
}
},
"position": 7
},
{
"type": "html",
"title": "ACPYPE-Antechamber python parser interface",
"link": "https://link.springer.com/article/10.1186/1756-0500-5-367",
"result_id": "4EdLgbJlEtEJ",
"snippet": "ACPYPE (or AnteChamber PYthon Parser interfacE) is a wrapper script around the ANTECHAMBER software that simplifies the generation of small molecule topologies and parameters for a variety of molecular dynamics programmes like GROMACS, CHARMM and …",
"publication_info": {
"summary": "AWS Da Silva, WF Vranken - BMC research notes, 2012 - Springer",
"authors": [
{
"name": "WF Vranken",
"link": "https://scholar.google.com/citations?user=2PfcYK4AAAAJ&hl=en&oi=sra",
"author_id": "2PfcYK4AAAAJ"
}
]
},
"inline_links": {
"cited_by": {
"total": 1261,
"link": "https://scholar.google.com/scholar?cites=15065215520855508960&as_sdt=5,47&sciodt=0,47&hl=en",
"cites_id": "15065215520855508960"
},
"related_pages_link": "/scholar?q=related:4EdLgbJlEtEJ:scholar.google.com/&scioq=python&hl=en&as_sdt=0,47",
"versions": {
"total": 22,
"link": "https://scholar.google.com/scholar?cluster=15065215520855508960&hl=en&as_sdt=0,47",
"cluster_id": "15065215520855508960"
}
},
"position": 8
},
{
"type": "book",
"title": "Python machine learning",
"link": "https://books.google.com/books?hl=en&lr=&id=GOVOCwAAQBAJ&oi=fnd&pg=PP1&dq=python&ots=Nd9DIeUWZH&sig=PJTyGGRYlXPn-yt63aqHbEX4k24",
"result_id": "02jmKWjQSB8J",
"snippet": "Unlock deeper insights into Machine Leaning with this vital guide to cutting-edge predictive analytics About This Book Leverage Python's most powerful open-source libraries for deep learning, data wrangling, and data visualization Learn effective strategies and best practices …",
"publication_info": {
"summary": "S Raschka - 2015 - books.google.com",
"authors": [
{
"name": "S Raschka",
"link": "https://scholar.google.com/citations?user=X4RCC0IAAAAJ&hl=en&oi=sra",
"author_id": "X4RCC0IAAAAJ"
}
]
},
"inline_links": {
"cited_by": {
"total": 881,
"link": "https://scholar.google.com/scholar?cites=2254280759297075411&as_sdt=5,47&sciodt=0,47&hl=en",
"cites_id": "2254280759297075411"
},
"related_pages_link": "/scholar?q=related:02jmKWjQSB8J:scholar.google.com/&scioq=python&hl=en&as_sdt=0,47",
"versions": {
"total": 8,
"link": "https://scholar.google.com/scholar?cluster=2254280759297075411&hl=en&as_sdt=0,47",
"cluster_id": "2254280759297075411"
}
},
"position": 9
},
{
"type": "html",
"title": "ParselTongue: AIPS Talking Python",
"link": "http://adsabs.harvard.edu/pdf/2006ASPC..351..497K",
"result_id": "khhr5Q74JJsJ",
"snippet": "After more than 20 years of service, classic AIPS still is the data reduction package of choice for many radio-interferometry projects, especially for VLBI. Its age shows, most prominently in the limited scripting capabilities of its user interface: POPS. ParselTongue is an attempt to …",
"publication_info": {
"summary": "M Kettenis, HJ van Langevelde… - … and systems XV, 2006 - adsabs.harvard.edu",
"authors": [
{
"name": "HJ van Langevelde",
"link": "https://scholar.google.com/citations?user=_x0yHp8AAAAJ&hl=en&oi=sra",
"author_id": "_x0yHp8AAAAJ"
}
]
},
"inline_links": {
"cited_by": {
"total": 199,
"link": "https://scholar.google.com/scholar?cites=11179332917902645394&as_sdt=5,47&sciodt=0,47&hl=en",
"cites_id": "11179332917902645394"
},
"related_pages_link": "/scholar?q=related:khhr5Q74JJsJ:scholar.google.com/&scioq=python&hl=en&as_sdt=0,47",
"versions": {
"total": 10,
"link": "https://scholar.google.com/scholar?cluster=11179332917902645394&hl=en&as_sdt=0,47",
"cluster_id": "11179332917902645394"
}
},
"position": 10
}
],
"pagination": {
"other_pages": {
"2": "https://scholar.google.com/scholar?start=10&q=python&hl=en&as_sdt=0,47",
"3": "https://scholar.google.com/scholar?start=20&q=python&hl=en&as_sdt=0,47",
"4": "https://scholar.google.com/scholar?start=30&q=python&hl=en&as_sdt=0,47",
"5": "https://scholar.google.com/scholar?start=40&q=python&hl=en&as_sdt=0,47",
"6": "https://scholar.google.com/scholar?start=50&q=python&hl=en&as_sdt=0,47",
"7": "https://scholar.google.com/scholar?start=60&q=python&hl=en&as_sdt=0,47",
"8": "https://scholar.google.com/scholar?start=70&q=python&hl=en&as_sdt=0,47",
"9": "https://scholar.google.com/scholar?start=80&q=python&hl=en&as_sdt=0,47",
"10": "https://scholar.google.com/scholar?start=90&q=python&hl=en&as_sdt=0,47"
},
"current": 1,
"next": "https://scholar.google.com/scholar?start=10&q=python&hl=en&as_sdt=0,47"
},
"searchdata_pagination": {
"current": 1,
"next": "https://serpapi.webscrapingapi.com/v1?q=python&hl=en&start=10",
"other_pages": {
"2": "https://serpapi.webscrapingapi.com/v1?q=python&hl=en&start=10",
"3": "https://serpapi.webscrapingapi.com/v1?q=python&hl=en&start=20",
"4": "https://serpapi.webscrapingapi.com/v1?q=python&hl=en&start=30",
"5": "https://serpapi.webscrapingapi.com/v1?q=python&hl=en&start=40",
"6": "https://serpapi.webscrapingapi.com/v1?q=python&hl=en&start=50",
"7": "https://serpapi.webscrapingapi.com/v1?q=python&hl=en&start=60",
"8": "https://serpapi.webscrapingapi.com/v1?q=python&hl=en&start=70",
"9": "https://serpapi.webscrapingapi.com/v1?q=python&hl=en&start=80",
"10": "https://serpapi.webscrapingapi.com/v1?q=python&hl=en&start=90"
}
}
}
Last updated