Skip to content

Latest commit

 

History

History
89 lines (67 loc) · 2.85 KB

File metadata and controls

89 lines (67 loc) · 2.85 KB

Python — Reddit Lead Finder

Call the Reddit Lead Finder Actor from Python with the official apify-client. These are client-side examples — the Actor runs on Apify, your code just triggers it and reads the leads.

Install

pip install apify-client

Run and read leads

from apify_client import ApifyClient

client = ApifyClient("YOUR_APIFY_TOKEN")

run = client.actor("logiover/reddit-lead-finder").call(run_input={
    "keywords": ["looking for", "alternative to", "recommend"],
    "subreddits": ["SaaS", "Entrepreneur", "smallbusiness"],
    "intentFilter": "Buying signals only",
    "contentType": "Both",
    "maxResults": 1000,
})

for lead in client.dataset(run["defaultDatasetId"]).iterate_items():
    print(f"[{lead['intentLabel']}] u/{lead['author']} in r/{lead['subreddit']}\"{lead['matchedKeyword']}\"")
    print(f"  {lead['permalink']}")

Filter to fresh, high-intent leads and load into pandas

import pandas as pd
from apify_client import ApifyClient

client = ApifyClient("YOUR_APIFY_TOKEN")

run = client.actor("logiover/reddit-lead-finder").call(run_input={
    "keywords": ["fed up with", "switching from", "any recommendations for"],
    "subreddits": ["marketing", "sales", "startups"],
    "intentFilter": "Buying signals only",
    "afterDate": "2026-07-06",
    "min_score": 2,
    "maxResults": 2000,
})

items = list(client.dataset(run["defaultDatasetId"]).iterate_items())
df = pd.DataFrame(items)
print(df[["author", "subreddit", "intentLabel", "matchedKeyword", "permalink"]].head())

# Save for your sales team
df.to_csv("reddit_leads.csv", index=False)

Note: input keys mirror the Actor's input schema. Use minScore (camelCase) exactly as documented; the snippet above uses the schema field name.

Push leads to your CRM

import requests
from apify_client import ApifyClient

client = ApifyClient("YOUR_APIFY_TOKEN")
run = client.actor("logiover/reddit-lead-finder").call(run_input={
    "subreddits": ["SaaS", "smallbusiness"],
    "intentFilter": "Buying signals only",
    "maxResults": 500,
})

for lead in client.dataset(run["defaultDatasetId"]).iterate_items():
    requests.post("https://your-crm.example.com/api/leads", json={
        "source": "reddit",
        "handle": lead["author"],
        "profileUrl": lead["authorProfileUrl"],
        "intent": lead["intentLabel"],
        "note": lead["text"],
        "link": lead["permalink"],
    })

Notes

  • Actor ID: logiover/reddit-lead-finder.
  • Every input is optional; .call(run_input={}) runs with defaults (1000+ leads).
  • Use iterate_items() to stream large datasets without loading everything into memory.
  • Client docs: https://docs.apify.com/api/client/python/

▶️ Actor: https://apify.com/logiover/reddit-lead-finder