For the complete documentation index, see llms.txt. This page is also available as Markdown.

Scholar

Google Scholar scraper allows you to submit search queries and receive structured, parsed data including articles, books, citations, and related links.

The google_scholar data source is designed to retrieve Google Scholar search results, including academic papers, books, citations, and related links.

Request samples

In this example, we make a request to retrieve Google Scholar results for the query best novels.

curl 'https://realtime.oxylabs.io/v1/queries' \
--user 'USERNAME:PASSWORD' \
-H 'Content-Type: application/json' \
-d '{
        "source": "google_scholar",
        "query": "best novels",
        "render": "html",
        "parse": true
    }'
import requests
from pprint import pprint

# Structure payload.
payload = {
  "source": "google_scholar",
  "query": "best novels",
  "render": "html",
  "parse": True
}

# Get response.
response = requests.request(
    'POST',
    'https://realtime.oxylabs.io/v1/queries',
    auth=('USERNAME', 'PASSWORD'),
    json=payload,
)

# Print prettified response to stdout.
pprint(response.json())

We use synchronous Realtime integration method in our examples. If you would like to use Proxy Endpoint or asynchronous Push-Pull integration, refer to the integration methods section.

Request parameters

Parameter
Description
Default Value

source

Sets the scraper. Use google_scholar.

query

Search term for the request.

render

Enables JavaScript rendering when set to html. More info.

parse

Returns parsed data when set to true. See more in output dictionary.

false

callback_url

URL to your callback endpoint. More info.

user_agent_type

Device type and browser. The full list can be found here.

desktop

– mandatory parameter

Structured data

Web Scraper API can extract results HTML or JSON response that contains structured data on various elements of the results page.

Structured google_scholar output

Output dictionary

The table below presents a detailed list of each top-level element we parse, along with its description and data type.

The number of organic results and certain fields may vary depending on the search query and result type.

Key
Description
Type

url

URL to the Google Scholar search results page.

string

page

Current page number of the search results.

integer

parse_status_code

The status code of the parsing job. Learn more here.

integer

organic

List of organic search results. Includes pos, title, url, description, result_id, result_type, publication_info, inline_links, resources.

array

organic.result_type

Identifies the format of the result (book, pdf, etc.). Omitted when the result is a standard article.

string

organic.publication_info

Summary of the publication. Includes summary (authors, year, publisher/source as a single string) and, when available, a structured authors list with author_id, name, and profile url.

object

organic.inline_links

Academic metadata attached to the result. Includes cite_url, cited_by, related_pages_url, versions.

object

organic.inline_links.cited_by

Citation data for the result. Includes cites_id, total (total citation count), and url (link to citing works).

object

organic.inline_links.related_pages_url

URL to find papers related to the result.

string

organic.inline_links.versions

Alternative versions/links for the same document. Includes cluster_id, total, and url.

object

organic.resources

Direct download links for accessible media, e.g. PDFs. Includes file_format, title, url.

array

pagination

Details about the current and available result pages. Includes current_page, next_page, other_pages.

object

related_searches

Google's suggested related search strings. Includes query and url for each suggestion.

array

search_information

General details about the search. Includes query_displayed, time_taken_displayed, total_results_count.

object

created_at

Timestamp when the scraping job was created.

timestamp

updated_at

Timestamp when the scraping job was finished.

timestamp

job_id

ID of the job associated with the scraping job.

string

status_code

Status code of the scraping job. Learn more here.

integer

Last updated

Was this helpful?