arXiv Scraper: Search AI, Physics, and Biology Preprints with PDF Links via API
Search arXiv preprints by keyword, category, or author. Returns title, abstract, authors, categories, and PDF links. Track AI research before peer review. No API key required.
The actor referenced in this article. Pay only for results delivered.
arXiv hosts over 2.3 million preprints across physics, mathematics, computer science, quantitative biology, economics, and statistics. In AI and ML, it is effectively the primary publication venue: papers appear on arXiv weeks or months before journal publication. Our arXiv Scraper queries the full index and returns structured records with PDF links.
What you get per paper
arxiv_id: arXiv identifier (e.g.2301.07543)title: paper titleabstract: full abstract textauthors: list of author namescategories: arXiv subject categories (e.g.cs.LG,cs.CL)primary_category: primary categorysubmitted: submission dateupdated: last update datepdf_url: direct link to the PDFabs_url: arXiv abstract page URLdoi: DOI if published in a journalscraped_at: ISO timestamp
Python example
import requests, time
run = requests.post(
"https://api.apify.com/v2/acts/themineworks~arxiv-preprint-search/runs",
headers={"Authorization": f"Bearer {APIFY_TOKEN}"},
json={
"query": "mixture of experts language model scaling",
"category": "cs.LG",
"dateFrom": "2024-01-01",
"maxResults": 100
}
)
run_id = run.json()["data"]["id"]
while True:
r = requests.get(
f"https://api.apify.com/v2/actor-runs/{run_id}",
headers={"Authorization": f"Bearer {APIFY_TOKEN}"}
).json()
if r["data"]["status"] in ("SUCCEEDED", "FAILED"):
break
time.sleep(5)
papers = requests.get(
f"https://api.apify.com/v2/actor-runs/{run_id}/dataset/items",
headers={"Authorization": f"Bearer {APIFY_TOKEN}"}
).json()
for p in papers:
print(p["arxiv_id"], p["submitted"])
print(f" {p['title']}")
print(f" {p['pdf_url']}")
Monitor AI research weekly
from datetime import date, timedelta
last_week = (date.today() - timedelta(days=7)).isoformat()
run = requests.post(
"https://api.apify.com/v2/acts/themineworks~arxiv-preprint-search/runs",
headers={"Authorization": f"Bearer {APIFY_TOKEN}"},
json={
"category": "cs.AI",
"dateFrom": last_week,
"maxResults": 200
}
)
# schedule this weekly to track the frontier
Build a research monitoring feed
import pandas as pd
df = pd.DataFrame(papers)
df["submitted"] = pd.to_datetime(df["submitted"])
# Papers per week
weekly = df.groupby(df["submitted"].dt.to_period("W")).size()
print(weekly)
# Most prolific authors in this result set
from collections import Counter
all_authors = [a for p in papers for a in p.get("authors", [])]
print(Counter(all_authors).most_common(15))
Parameters
| Parameter | Default | Notes |
|---|---|---|
query | None | Keyword search across title and abstract |
author | None | Author name filter |
category | None | arXiv category code (e.g. cs.LG, cs.CL, quant-ph, q-bio.GN) |
dateFrom | None | Submitted after date (YYYY-MM-DD) |
sortBy | "submittedDate" | Sort by "submittedDate" or "relevance" |
maxResults | 100 | Maximum papers to return |
arXiv category codes
| Code | Field |
|---|---|
cs.LG | Machine Learning |
cs.CL | Computation and Language (NLP) |
cs.CV | Computer Vision |
cs.AI | Artificial Intelligence |
stat.ML | Statistics: Machine Learning |
q-bio.GN | Genomics |
physics.bio-ph | Biological Physics |
Use cases
AI research monitoring. Track the frontier of a specific subfield: LLM reasoning, diffusion models, multimodal learning, as papers appear, before they reach conference proceedings.
Literature-grounded RAG. Pull abstracts for a research domain and build a retrieval-augmented QA system for R&D teams who need to query current research.
Competitive intelligence for AI companies. Monitor preprints from competitor research labs. Publication velocity and topic clusters signal where teams are investing.
Academic citation seeding. Find the latest foundational papers to cite in a grant or paper submission before a database like PubMed has indexed them.
Investment research. Track which institutions are publishing most actively in an emerging area (quantum computing, protein folding, materials science) as a signal for talent concentration and licensing potential.
Pricing
$0.002 per paper. Empty queries are not charged.
Available on Apify.
Explore the scraper referenced in this article: inputs, outputs, and pricing, then run it on Apify.
NIH RePORTER API: Search Grant Funding, Award Amounts, and Principal Investigators
Search NIH grant awards by topic, agency, institution, or state. Returns project title, abstract, award amount, and PI data for research funding intelligence. No API key required.
ClinicalTrials.gov API v2: How to Search 600,000 Studies and Track Trial Status
How to use the ClinicalTrials.gov v2 REST API: what changed from v1, which filters actually exist, and Python for bulk pulls and status monitoring.
Crossref API: 150 Million DOIs, Citation Counts, and Bibliographic Data for Free
Crossref's free REST API returns journal and article metadata, reference lists and citation counts for 150M+ DOIs, with no API key needed.
Google Trends API for Python in 2025: pytrends vs Scraper
Google Trends has no official API. Learn why pytrends breaks, how the SERP API approach works, and the fastest way to pull trend data into Python without getting rate-limited.