Skip to main content

Snapgrab

PyPI Python License Tests

한국어 문서

URL to screenshot with metadata. Claude Vision optimized.

from snapgrab import capture

result = await capture("https://example.com")
print(result.path)           # /tmp/snapgrab/example_com_desktop_20260317_120000.png
print(result.metadata.title) # "Example Domain"
print(result.vision_tokens)  # ~2764

Features

  • Screenshot capture — PNG, JPEG, PDF with full-page support
  • Page metadata — title, description, Open Graph tags, favicon, HTTP status
  • Claude Vision optimized — auto-resize to 1568px, token cost estimation
  • Viewport presets — desktop (1920x1080), tablet (768x1024), mobile (375x812)
  • MCP server included — 3 tools for Claude Code / MCP clients
  • Element capture — screenshot specific CSS selectors
  • Dark mode — force light/dark color scheme

Install

pip install snapgrab

First run will prompt to install Playwright browsers:

playwright install chromium

Usage

Python API

import asyncio
from snapgrab import capture

async def main():
    # Basic screenshot
    result = await capture("https://example.com")

    # Mobile viewport, full page
    result = await capture("https://example.com", viewport="mobile", full_page=True)

    # Dark mode, JPEG format
    result = await capture("https://example.com", dark_mode=True, format="jpeg")

    # Specific element
    result = await capture("https://example.com", selector="#main-content")

    # Custom viewport
    result = await capture("https://example.com", viewport=(1440, 900))

asyncio.run(main())

CLI

snapgrab https://example.com                          # basic PNG
snapgrab https://example.com -v mobile -f             # mobile, full page
snapgrab https://example.com --format jpeg -q 90      # JPEG quality 90
snapgrab https://example.com -s "#hero" --dark-mode   # element + dark mode
snapgrab https://example.com -j                       # JSON output
snapgrab meta https://example.com                     # metadata only

MCP Server

pip install "snapgrab[mcp]"
snapgrab-mcp  # starts stdio MCP server

Tools:

  • capture_screenshot — capture URL with metadata and vision token estimate
  • capture_comparison — compare desktop vs mobile (or any viewports)
  • extract_page_metadata — metadata only, no screenshot

CaptureResult

result.path            # saved file path
result.format          # "png", "jpeg", "pdf"
result.width           # viewport width
result.height          # page height (full_page) or viewport height
result.file_size       # bytes
result.vision_tokens   # estimated Claude Vision token cost
result.vision_path     # path to Vision-optimized image (≤1568px)
result.processing_time_ms
result.metadata.title
result.metadata.description
result.metadata.og_title
result.metadata.og_image
result.metadata.favicon_url
result.metadata.status_code
result.metadata.url    # final URL after redirects

License

MIT

Metadata

Release files for snapgrab 0.1.1

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

Source distribution (sdist)

Source distribution for snapgrab 0.1.1
File Size Uploaded Provenance Actions
snapgrab-0.1.1.tar.gz 11.6 kB With provenance Details for snapgrab-0.1.1.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for snapgrab 0.1.1
File Interpreter ABI Platform Actions
snapgrab-0.1.1-py3-none-any.whl Python 3 none any Details for snapgrab-0.1.1-py3-none-any.whl

Total release size: 24.5 kB

Release files / snapgrab-0.1.1.tar.gz

Download URL snapgrab-0.1.1.tar.gz
Size 11.6 kB
Tags Source
SHA-256 checksum
How to use checksums
8a33b1ffabe0787189dc0beb99c5577680b3dc738ddc9221340affa2c0875eb1
BLAKE2b-256 checksum
How to use checksums
3eb37dbbf22cfc8f58734f09a85ee62a9e74bbd95c17699c40009ab31f207f84
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.7

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Mar 25, 2026.

Transparency log

Release files / snapgrab-0.1.1-py3-none-any.whl

Download URL snapgrab-0.1.1-py3-none-any.whl
Size 12.8 kB
Tags Python 3
SHA-256 checksum
How to use checksums
9441530cf3fa39435b3cd66039a3938d2a2c08466bec654e2660a73ca5c35cae
BLAKE2b-256 checksum
How to use checksums
5e01891e12d0c19e3091b23f05707f2839adb8135d6710c30b4835fa6c357912
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.7

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Mar 25, 2026.

Transparency log

Security for snapgrab 0.1.1

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

Full provenance

All 2 files in this release have been uploaded with provenance metadata.

Select from 2 files

Attestation for snapgrab-0.1.1.tar.gz

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Mar 25, 2026.

Transparency log

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Release history Release notifications | RSS feed

This release

0.1.1 This release

2 release files Full provenance

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