Show HN: An API that takes a URL and returns a file with browser screenshots
Use cases and overall reception
- Many commenters find an HTTP API for browser-based screenshots useful for link previews, self-hosted bookmarking, visual regression, archiving, IoT displays, and privacy-preserving tweet embeds.
- Several people say they’ve built similar internal tools and like having a generic “preview” microservice.
Cookie banners and EU consent dialogs
- Cookie popups are described as the hardest practical problem for automated screenshots.
- Approaches suggested:
- Browser extensions like consent-o-matic to auto-accept/close banners.
- Heuristics over DOM (common classes, “accept” strings, fixed/sticky + high z-index).
- Vision models to detect banners and return coordinates to hide them, though cost and risk of removing real content are concerns.
- SeleniumBase / CDP-based automation to search for consent text and click accept.
- Some argue providers should simply stop “malicious compliance” with EU rules, others just want screenshots without banners regardless of compliance nuance.
Alternatives and tooling tips
- Multiple alternatives are mentioned: Puppeteer, Playwright, Selenium, shot-scraper, gowitness, and prior open-source screenshot libraries.
- Chrome and Firefox CLI flags for headless screenshots are highlighted; people appreciate not needing full Selenium stacks.
- There’s discussion of Chrome’s deprecated
--disable-gpuflag and differences in how Chrome vs Firefox handle full-page screenshots and scrolling artifacts. - Some suggest MCP as the preferred modern interface for exposing such tools to LLMs.
Hosted services vs self-hosting
- Numerous commercial APIs are cited (screenshot, scraping, and browser-automation specialists).
- Arguments for SaaS: avoiding scaling, CAPTCHAs/anti-bot countermeasures, long-term maintenance, and SSRF risk.
- One provider’s automatic “upgrade to next pricing tier when over quota” policy is debated; some see it as customer-friendly continuity, others as an unacceptable unilateral charge.
Security considerations
- Strong warnings about SSRF: untrusted URLs can let the headless browser hit internal services (e.g., Kubernetes API).
- Recommended mitigations: Linux network namespaces, blocking private IP ranges, or routing via an isolated VPN.
- This is cited as a major reason larger orgs avoid rolling their own.
Branding, features, and limitations
- The us.ai domain and government-adjacent branding draw skepticism; some say it looks like a US government/defense contractor site.
- Suggestions for the project: additional formats beyond JPEG, clickmap + link metadata, content diffing over time, better repo screenshots, and Cloudflare/anti-bot handling.
- One commenter asks why this sits in an “artificial intelligence” repo when it’s mainly browser automation.