Fetch academic research papers from multiple sources including Google Scholar, Arxiv, Semantic Scholar, ACL, ACM, and more
pip install respsearchFor Connected Papers support (requires Selenium):
pip install respsearch[selenium]from resp import arxiv, semantic_scholar, acm, google_scholar
# Arxiv - No API key needed
papers = arxiv.search_papers("deep learning", max_results=10)
# Semantic Scholar - No API key needed
papers = semantic_scholar.search_papers("natural language processing", max_results=5)
# ACM Digital Library - No API key needed
papers = acm.search_papers("machine learning", max_results=5)
# Google Scholar - Requires free SerpAPI key from https://serpapi.com/
google_scholar.set_api_key("your_serpapi_key")
papers = google_scholar.search_papers("machine learning", num_results=10)from resp.apis.arxiv_api import Arxiv
from resp.apis.semantic_s import Semantic_Scholar
from resp.apis.serp_api import Serp
# Arxiv
ap = Arxiv()
papers = ap.arxiv('deep learning', max_pages=5)
# Semantic Scholar
sc = Semantic_Scholar()
papers = sc.ss('neural networks', max_pages=3)
# Google Scholar via Serp
serp = Serp(api_key="your_serpapi_key")
papers = serp.google_scholar_search('transformers', max_pages=2)- π Search papers by keywords across multiple academic sources
- π Fetch citations of any paper from Google Scholar
- π Find related papers from Google Scholar
- πΈοΈ Connected Papers - discover papers using similarity graphs (not just citations)
| Source | API Key Required | Status |
|---|---|---|
| Arxiv | β Free | β Working |
| Semantic Scholar | β Free | β Working |
| Google Scholar | π Required (SerpAPI) | β Working |
| ACM Digital Library | β Free | |
| ACL Anthology | β Free | β Via Resp |
| PMLR | β Free | β Via Resp |
| NeurIPS | β Free | β Via Resp |
| IJCAI | β Free | β Via Resp |
| OpenReview | β Free | β Via Resp |
| CVF Open Access | β Free | β Via Resp |
| Connected Papers | β Free | β Requires Selenium |
*ACM website structure changes frequently, may return limited results
from resp import google_scholar
# Set API key once
google_scholar.set_api_key("your_serpapi_key")
# Search papers
papers = google_scholar.search_papers("attention mechanism", num_results=5)
# Get citations for a paper
citations = google_scholar.get_citations("Attention is all you need")
# Get related papers
related = google_scholar.get_related_papers("BERT language model")from resp import connected_papers
# Install first: pip install respsearch[selenium]
papers = connected_papers().get_connected_papers("paper_title")from resp import Resp
# Search across ACL, PMLR, NeurIPS, etc.
resp = Resp()
papers = resp.search_papers("keyword", source="acl")If you find this repository useful, please cite:
@misc{Resp2021,
title = {RESP: Research Papers Search},
author = {Pal, Ankit},
year = {2021},
howpublished = {\url{https://github.com/monk1337/resp}},
note = {Fetch academic research papers from multiple sources}
}If you'd like to support this project:
