Skip to content

Letterboxd 403 Forbidden (Cloudflare) breaks sync — public profile, browser works, scraper blocked #4

@sachatt

Description

@sachatt

Description

I’m consistently getting a 403 Forbidden error from Letterboxd when using this tool, even though:

  • The Letterboxd profile is public
  • The profile loads correctly in a logged-out browser
  • Trakt authentication completes successfully
  • DNS/networking issues have been ruled out

This appears to be Cloudflare bot protection blocking letterboxdpy, not a configuration or privacy issue.

Error output

PrivateRouteError: {
  "code": 403,
  "reason": "Forbidden",
  "url": "https://letterboxd.com/torquenofriction",
  "message": "Unknown error occurred"
}

Full traceback shows failure originating from:

letterboxdpy/core/scraper.py::_check_for_errors

The request is blocked at the initial profile page fetch.

Environment

  • Platform: Docker container ghcr.io/f0e/letterboxd-trakt-sync:latest
  • Network: DNS confirmed working, Trakt API reachable
  • Profile tested: https://letterboxd.com/torquenofriction (public)

What I’ve verified

  • ✅ Letterboxd profile is public
  • ✅ URL loads in incognito / logged-out browser
  • ✅ Username is correct (case-insensitive)
  • ✅ Trakt auth succeeds
  • ✅ DNS and HTTPS connectivity are working
  • ❌ Letterboxd returns 403 only to scripted requests

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions