Skip to content

Claude/reddit ai relationships scraper ugh g8#5

Merged
jheller1212 merged 7 commits into
mainfrom
claude/reddit-ai-relationships-scraper-UghG8
Mar 7, 2026
Merged

Claude/reddit ai relationships scraper ugh g8#5
jheller1212 merged 7 commits into
mainfrom
claude/reddit-ai-relationships-scraper-UghG8

Conversation

@jheller1212

Copy link
Copy Markdown
Owner

No description provided.

claude added 7 commits March 5, 2026 16:50
- Lemon favicon and branding (scraping = squeezing)
- Animated background blobs with gradient colors
- Glassmorphism cards with backdrop blur
- Gradient text, bouncy lemon animations
- Vibrant lemon/orange/pink/purple color palette
- Space Grotesk font for bold Gen Alpha typography
- Smooth micro-interactions and hover effects
- Light/dark themes both updated

https://claude.ai/code/session_01JS12oCAdiNAGoSr7NhmNzU
- Added 3-step "How it works" onboarding section
- Info tooltip (?) badges on Sort, Posts per sort, Time filter, Keywords
- Detailed title tooltips on every toggle explaining what each does
- Export hint section explaining CSV vs JSON formats for researchers
- Updated hero copy for academic research focus
- Subtitle text under Settings and Results headers
- Research-friendly footer with privacy note (all processing in browser)
- Responsive layout for new elements on mobile

https://claude.ai/code/session_01JS12oCAdiNAGoSr7NhmNzU
- Switch primary endpoint from www.reddit.com to old.reddit.com (less aggressive blocking)
- Add comprehensive browser-like headers (Sec-Fetch-*, Sec-Ch-Ua, etc.)
- Add OAuth fallback: if REDDIT_CLIENT_ID and REDDIT_CLIENT_SECRET env vars are set,
  uses Reddit's OAuth API (oauth.reddit.com) as the primary strategy
- Try multiple base URLs before giving up (old.reddit.com → www.reddit.com)
- Detect HTML responses (blocked pages) and fall through to next strategy
- Truncate error messages to avoid dumping huge HTML into the UI
- Provide actionable error message guiding users to set up OAuth credentials if all public endpoints fail

https://claude.ai/code/session_01JS12oCAdiNAGoSr7NhmNzU
The workflow now gracefully handles the case where gh pr create fails
because a PR was previously merged or closed for this branch, instead
of failing the entire job.

https://claude.ai/code/session_01JS12oCAdiNAGoSr7NhmNzU
…oints

Reddit now blocks all unauthenticated requests from server IPs (403).
The scraper was falling back to public JSON endpoints which always fail.

Changes:
- scrape.mjs: Remove public endpoint fallback, use OAuth API exclusively
- scrape.mjs: Clear error messages when credentials are missing or invalid
- scrape.mjs: Handle 401 token expiry with automatic refresh
- index.html: Update copy to reflect OAuth API usage

To make it work, set REDDIT_CLIENT_ID and REDDIT_CLIENT_SECRET in
Netlify dashboard (Site Settings > Environment Variables).
Get free credentials at reddit.com/prefs/apps (script type app).

https://claude.ai/code/session_01JS12oCAdiNAGoSr7NhmNzU
Reddit blocks unauthenticated requests from server IPs and the user
cannot create Reddit API credentials. Switch to PullPush.io, a free
Reddit data mirror that requires no authentication.

- Submissions via api.pullpush.io/reddit/search/submission/
- Comments via api.pullpush.io/reddit/search/comment/
- Pagination uses Unix timestamps (before param) instead of Reddit tokens
- Rate limit handling with exponential backoff
- Same response format {posts, after, done} for frontend compatibility

https://claude.ai/code/session_01JS12oCAdiNAGoSr7NhmNzU
- Rewrote README to describe a general-purpose subreddit scraper
- Removed all references to specific subreddits and research topics
- Updated package.json name/description to match
- Fixed footer (was still referencing OAuth API, now says no API keys)

https://claude.ai/code/session_01JS12oCAdiNAGoSr7NhmNzU
@netlify

netlify Bot commented Mar 7, 2026

Copy link
Copy Markdown

Deploy Preview for redditscrapersbe ready!

Name Link
🔨 Latest commit b435d67
🔍 Latest deploy log https://app.netlify.com/projects/redditscrapersbe/deploys/69ac876917cd7e00087e0fe7
😎 Deploy Preview https://deploy-preview-5--redditscrapersbe.netlify.app
📱 Preview on mobile
Toggle QR Code...

QR Code

Use your smartphone camera to open QR code link.

To edit notification comments on pull requests, go to your Netlify project configuration.

@jheller1212
jheller1212 merged commit 3bcc5b8 into main Mar 7, 2026
4 of 5 checks passed
jheller1212 pushed a commit that referenced this pull request Mar 11, 2026
…re, academic fields

Critical fixes:
- #1 Thread-level scraping: paste a post URL and get the post + all
  comments instantly. Auto-detected from input — no new UI needed
- #2 Add Hot, Controversial, Rising sort modes (Controversial is key
  for polarization research)
- #3 Time filter greys out when neither Top nor Controversial is active
- #5 Partial data on Stop: always shows download buttons with message
  "Stopped at X posts. Partial data available below."

Academic data fields added (#7):
- Posts: edited, distinguished, is_crosspost, crosspost_subreddit,
  total_awards_received, gilded
- Comments: depth (nesting level), edited, distinguished,
  controversiality

UX improvements:
- #10 Progressive disclosure: options panel hidden until Analyze
  completes. No more wall of options on first load
- #11 Keyword analysis moved under "Advanced" collapsible section
- #12 Single primary download button "Download for R/Python (Combined
  CSV)" with other formats under collapsible
- #13 CTA renamed to "Squeeze Data" for clarity
- #4 Post limit capped at 1000 with visible note
- #8 Specific error messages for 404/403 (not found, private)
- #9 Input accepts post URLs, subreddit URLs, r/prefix, plain names

https://claude.ai/code/session_01JS12oCAdiNAGoSr7NhmNzU
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants