Skip to content

monk1337/resp

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

73 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

RESP: Research Papers Search

Fetch academic research papers from multiple sources including Google Scholar, Arxiv, Semantic Scholar, ACL, ACM, and more

PyPI version Python versions License GitHub commit PRs Welcome Open In Colab

Installation

pip install respsearch

For Connected Papers support (requires Selenium):

pip install respsearch[selenium]

Quick Start

Simple API (Recommended)

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)

Advanced API (Direct Class Access)

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)

Features

  • πŸ” 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)

Supported Sources

Source API Key Required Status
Arxiv βœ… Free βœ… Working
Semantic Scholar βœ… Free βœ… Working
Google Scholar πŸ”‘ Required (SerpAPI) βœ… Working
ACM Digital Library βœ… Free ⚠️ Limited*
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

Advanced Features

Google Scholar: Get Citations & Related Papers

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")

Connected Papers (Requires Selenium)

from resp import connected_papers

# Install first: pip install respsearch[selenium]
papers = connected_papers().get_connected_papers("paper_title")

Using Resp Class for Multiple Sources

from resp import Resp

# Search across ACL, PMLR, NeurIPS, etc.
resp = Resp()
papers = resp.search_papers("keyword", source="acl")

Citation

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}
}

Support

If you'd like to support this project:

Star History Chart