π Scrape Google Scholar research papers with Groq, SerpApi, CrossRef and Sheets
β‘ 10 views Β· π Market Research & Insights
π‘ Pro Tip β HTTP Request scraping tends to break when sites update their markup. If youβre scraping a major platform, check if ScraperNode covers it β it has maintained scrapers for LinkedIn, Instagram, TikTok, YouTube, and 20+ other platforms that return structured data.
Description
Quick overview
This workflow takes a research topic from an n8n chat message, uses Groq to generate optimized Google Scholar queries, fetches paper results via SerpApi, enriches missing DOIs using the Crossref API, deduplicates the results, and appends the final paper list to Google Sheets.
How it works
- Receives a research title/description as an n8n chat message.
- Uses Groq (Llama 3.1) to generate multiple optimized Google Scholar search queries and parses them into structured JSON.
- Runs each query against Google Scholar via SerpApi with a publication date filter (2018β2025) and flattens the returned organic results into one list.
- Extracts DOI and year from the Scholar result when possible, and for items without a DOI it looks up the DOI in Crossref by title (with a short wait between requests).
- Merges the enriched items back into a single dataset and removes duplicate entries based on the paper link.
- Appends the final fields (query, title, authors, year, link, abstract/snippet, DOI, and DOI URL) to a target Google Sheets worksheet.
Setup
- Add Groq API credentials for the Groq Chat Model used to generate and parse Google Scholar queries.
- Add SerpApi credentials and ensure your SerpApi plan supports the Google Scholar engine.
- Ensure Crossref requests use a valid User-Agent email by updating the
mailto:your@email.comvalue in the Crossref HTTP request headers. - Add Google Sheets OAuth2 credentials and update the spreadsheet ID and sheet/tab in the Google Sheets append step.
- Create the target Google Sheet with matching columns (Query, Title, Link, Abstract, Authors, DOI-URL, DOI, Year) or adjust the column mapping to your schema.
π Nodes Used
Google Sheets, HTTP Request, Basic LLM Chain, Chat Trigger, Groq Chat Model, Information Extractor
π₯ Import
Download workflow.json and import into n8n:
Workflow menu β Import from File