Scrapeman
Docs: Response Viewer

Content detection

Scrapeman auto-detects the response content type: JSON, HTML, XML, JavaScript, CSS, image, PDF, text, or binary.

View modes per content type

Content type Available modes
SSE (text/event-stream) Events (default), Raw
JSON Raw, Pretty (CodeMirror syntax-highlighted), Tree (collapsible with JSONPath copy)
HTML Raw, Pretty (CodeMirror syntax-highlighted), Preview (sandboxed iframe)
XML Raw, Pretty (CodeMirror syntax-highlighted, indented)
JavaScript Raw, Pretty (CodeMirror syntax-highlighted)
CSS Raw, Pretty (CodeMirror syntax-highlighted)
Image Raw (hex), Preview (rendered)
PDF Raw, Preview (Chromium PDF viewer)
Text / binary Raw

Pretty mode runs CodeMirror with the one-dark theme in dark mode. Syntax coloring follows the language grammar. The default view for JSON, HTML, XML, JavaScript, CSS, image, and PDF is the structured view (Tree / Pretty / Preview); Raw stays one click away.

Lazy parsing: JSON.parse and tree rendering only fire when you switch to Pretty or Tree view.

HTML preview

The Preview mode for HTML runs the response inside a sandboxed iframe with no script execution. External CSS, images, and fonts load (the prod CSP allows https: and http: for style, image, and font sources). A <base href> is injected so relative URLs (/assets/main.css) resolve to the originating server. The base href prefers the last redirect destination, then the executor's sent URL, then the URL the user typed.

SSE Events mode

When the response is text/event-stream (or the executor populates sseEvents) the viewer defaults to Events mode. Each event is shown in its own block with id, event, retry in the header row and the data body below. Valid JSON data renders as a collapsible JSON tree; otherwise it shows as monospace text.

Auto-scroll: the list follows new events as they arrive. Click Scroll: off to pause; click again to resume. Export JSON saves the full sseEvents array.

Response body search

Search within the response body with highlight and previous/next navigation.

  • Debounced input — the match scan runs 150 ms after you stop typing, so keystrokes feel instant on large bodies.
  • Virtualized rendering — Raw views render only the visible lines; 5 MB bodies scroll and search without jank.
  • Enter / Shift+Enter — jump to next / previous match; the viewport scrolls to centre the active match.
  • Large body warning — switching to Pretty mode on a body over 500 KB shows a banner suggesting Raw for best performance. Applies to all syntax-highlighted kinds.
  • The search query persists across sends and auto re-runs when a new response arrives.

Save response to file

The toolbar has a Save button that writes the decoded body to a file you choose, using the system save dialog.

Dev Tools tab

The Dev Tools tab appears next to Body and Headers after every response.

  • Timing waterfall — DNS lookup, TCP connect, TLS handshake, TTFB, and download. Each segment is proportional to its share of total time and labelled with its exact millisecond value.
  • Sent URL and headers — the actual URL and headers on the wire, after variable resolution, Scrape.do composition, and auth injection.
  • Redirect chain — each 3xx hop with status and Location.
  • TLS certificate — subject CN, issuer CN, validity dates, SHA-256 fingerprint. Days-remaining warning when fewer than 30 days remain.
  • Remote address — IP and port of the server that answered, plus HTTP version and compressed-vs-decoded size.
  • Script console — output from pre and post-request scripts.

Metrics

Every response shows: HTTP status, TTFB (time to first byte), download time, body size, and protocol (HTTP/1.1 or h2).