This is the official Python SDK for the ScreenshotMAX API.
It allows you to easily capture high-quality screenshots of any URL directly from your applications. The SDK handles authentication, request signing, and provides a simple interface to integrate ScreenshotMAX’s powerful screenshot services into your Python projects.
Get started in minutes. Just sign up to receive your access and secret keys, import the client, and you’re ready to capture screenshots.”
The SDK client is synchronized with the latest ScreenshotMAX API options.
pip install screenshotmax
Use the SDK to generate signed or unsigned URLs for screenshots, PDFs, web scraping, or animated screenshot—without executing the request. Or fetch and download the result directly. You have full control over when and how each capture runs.
from screenshotmax import SDK
from screenshotmax.enum import ImageFormat
from screenshotmax.options import ScreenshotOptions
sdk = SDK("<ACCESS_KEY>", "<SECRET_KEY>")
# set up options
opts = ScreenshotOptions(
url="https://example.com",
format=ImageFormat.PNG
)
# fetch screenshot (chaining method)
result, headers = sdk.screenshot.set_options(opts).fetch()
# optionnaly: generate signed URL
# (https://api.screenshotmax.com/v1/screenshot?url=https%3A%2F%2Fexample.com&format=png&access_key=<ACCESS_KEY>&signature=370f5b161bc59eed13b76........1f778635d7fc595dbab12)
url = sdk.screenshot.get_url()
from screenshotmax import SDK
from screenshotmax.options import ScrapeOptions
sdk = SDK("<ACCESS_KEY>", "<SECRET_KEY>")
# set up options and scrape content (chaining)
opts = ScrapeOptions(url="https://example.com")
sdk.scrape.set_options(opts)
result, headers = sdk.scrape.fetch()
from screenshotmax import SDK
from screenshotmax.enums import PDFPaperFormat
from screenshotmax.options import PDFOptions
sdk = SDK("<ACCESS_KEY>", "<SECRET_KEY>")
# set up options and scrape content (chaining)
opts = PDFOptions(url="https://example.com", pdf_paper_format=PDFPaperFormat.LETTER)
result, headers = sdk.pdf.set_options(opts).fetch()
from screenshotmax import SDK
from screenshotmax.options import PDFOptions
sdk = SDK("<ACCESS_KEY>", "<SECRET_KEY>")
# get all tasks from account
tasks = sdk.task.get_tasks()
# {"tasks":[{
# "id":5678133109850112,
# "name":"Test CRON",
# "api":"screenshot",
# "query":
# "url=https%3A%2F%2Fexample.com",
# "frequency":"every_day",
# "crontab":"25 13 * * *",
# "timezone":"Etc/UTC",
# "enabled":true,
# "created":1747229104,
# "last_run":1748611516,
# "runs":18}]}
screenshotmax
is released under the MIT license.