Skip to main content

crawlora-reddit — Reddit API client for Python

Python client for Crawlora's hosted Reddit API. It exposes 12 API endpoints covering search, post and comment details, subreddit feeds, user history, domain listings, trends, and leads. Requests go to Crawlora; the package does not run a browser or scrape Reddit locally. A Crawlora account and CRAWLORA_API_KEY are required, and API use is billed under your Crawlora account. Crawlora is independent from and not endorsed by Reddit or its owners.

Install

python -m pip install crawlora-reddit

Get an API key

Create an account at crawlora.net, then open the Crawlora console for API-key setup. Set your key in the shell before running the client:

export CRAWLORA_API_KEY="your-crawlora-api-key"

Use

Save this example as example.py, then run python example.py after installing the package and setting your API key.

import os

from crawlora_reddit import RedditClient

api_key = os.environ.get("CRAWLORA_API_KEY")
if not api_key:
    raise RuntimeError("Set CRAWLORA_API_KEY before running this example.")

with RedditClient(api_key=api_key) as client:
    result_1 = client.search(q='open source')
    print(result_1)
    result_2 = client.subreddit_posts(subreddit='technology')
    print(result_2)

The package also exports Client as an alias for RedditClient. Operation methods are available directly in snake_case and through the reddit group. The async package client is AsyncRedditClient; see the online endpoint and parameter reference and runnable example.

Async usage

The package also exports AsyncClient for asynchronous requests:

import asyncio
import os

from crawlora_reddit import AsyncClient

async def main():
    api_key = os.environ.get("CRAWLORA_API_KEY")
    if not api_key:
        raise RuntimeError("Set CRAWLORA_API_KEY before running this example.")
    async with AsyncClient(api_key=api_key) as client:
        result_1 = await client.search(q='open source')
        print(result_1)

asyncio.run(main())

See the runnable example for a complete usage example.

Supported Reddit API endpoints

This package exposes every route below through direct snake_case methods and the reddit group. See the endpoint and parameter reference for complete input details.

Method Endpoint API operation Description
GET /reddit/comments/{id} reddit-comments Get Reddit post comments
GET /reddit/domain/{domain}/posts reddit-domain-posts List Reddit domain posts
GET /reddit/leads reddit-leads Find Reddit buying-intent leads
GET /reddit/post/{id} reddit-post Get Reddit post
GET /reddit/search reddit-search Search Reddit posts
GET /reddit/subreddit/{subreddit}/about reddit-subreddit-about Get Reddit subreddit metadata
GET /reddit/subreddit/{subreddit}/comments reddit-subreddit-comments List Reddit subreddit comments
GET /reddit/subreddit/{subreddit}/posts reddit-subreddit-posts List Reddit subreddit posts
GET /reddit/subreddits/posts reddit-subreddits-posts List Reddit multi-subreddit posts
GET /reddit/trends reddit-trends List Reddit trends
GET /reddit/user/{username}/comments reddit-user-comments List Reddit user comments
GET /reddit/user/{username}/posts reddit-user-posts List Reddit user posts

Configuration

Pass your key through api_key or read CRAWLORA_API_KEY from the environment. Keep credentials out of source control and logs. Requests go to Crawlora's hosted API.

Metadata

Release files for crawlora-reddit 0.2.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for crawlora-reddit 0.2.0
File Size Uploaded
crawlora_reddit-0.2.0.tar.gz 25.2 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for crawlora-reddit 0.2.0
File Interpreter ABI Platform
crawlora_reddit-0.2.0-py3-none-any.whl Python 3 none any Details

Total release size: 51.1 kB

Release files / crawlora_reddit-0.2.0.tar.gz

Download URL crawlora_reddit-0.2.0.tar.gz
Size 25.2 kB
Tags Source
SHA-256 checksum
How to use checksums
98b4cca49c4f635a2d81f86b263636e3aa68186804b8eb3c44c07048b9ee38e6
BLAKE2b-256 checksum
How to use checksums
693274a8a88cebd6954289931f72b912e619f40154cc337b893e7650e2800123
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.12.15

Release files / crawlora_reddit-0.2.0-py3-none-any.whl

Download URL crawlora_reddit-0.2.0-py3-none-any.whl
Size 25.9 kB
Tags Python 3
SHA-256 checksum
How to use checksums
6058611b56e353d4ee7a9aeca8e0769da6700ad5be3022736558f10f800dff9b
BLAKE2b-256 checksum
How to use checksums
8175263e5b093ef3e61c45e81a2d337089689c81d6f39be03ff29e18c15f0191
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.12.15

Release history Release notifications | RSS feed

This release

0.2.0 This release

2 release files

0.1.2

2 release files

0.1.1

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page