Skip to content

View a page

View as Markdown

Use Analog to view a webpage as ordered records, prose, and navigation. Acquire the page, then search or inspect its saved content as your task requires. An overview is available when you need to get your bearings.

If you are setting up for the first time, start with the Quickstart, which teaches the browser capture handoff. The detailed acquisition examples below use a quotes page.

On this page

Use your agent’s browser for navigation and interaction, then capture the chosen page. view reads the capture file, validates it, and extracts from that state. It never fetches the URL or changes the browser. After the first command, you can search the saved name locally without another extraction.

Ordinary HTML is also accepted with the browser’s actual --url. It does not include the helper’s visibility observations. Structured viewing sends the supplied content and URL to Analog; --mode local keeps conversion local.

Use your actual capture path and an unused name:

Search a browser capture

analog view ./about.capture.json --save-as about --find "Frankie"
analog view about --find "Marcus" --find "Frankie"

Supply ordinary HTML instead

analog view ./about.html --url https://getanalog.io/about/ --save-as about --find "Frankie"

If your agent’s browser can supply a capture, use the supplied-page path. When you need Analog to acquire a URL, browse handles that step with its built-in browser. Fetch the quotes page to see its quotes as records with text, author, and tags. The command prints a receipt with a handle, which identifies this saved result, plus any material capture notes.

Use latest to return to the newest save, or use its handle to keep referring to the same result after another fetch. The next commands read the saved page without fetching it again.

Your handle may differ.

Fetch the example page

analog browse https://quotes.toscrape.com/js/
Output
Saved 20260913-zl65e4
Captured page 1; a next-page link is available.
A single-subject interpretation was withheld; some page facts could not be verified.

You can search the saved page immediately. This example looks for Einstein without first reading a preview or choosing field names:

Search a known value

analog view 20260913-zl65e4 --find Einstein
Output
Source: https://quotes.toscrape.com/js/
section[0] 3 matches
tags=[4 values], text="“The world as we have created it is a process of our thinking. It cannot be chan…(+35 chars)", text_2="by Albert Einstein"
tags=[5 values], text="“There are only two ways to live your life. One is as though nothing is a miracl…(+51 chars)", text_2="by Albert Einstein"
tags=[3 values], text="“Try not to become a man of success. Rather become a man of value.”", text_2="by Albert Einstein"
Captured page 1; a next-page link is available.
A single-subject interpretation was withheld; some page facts could not be verified.

The matches retain the author and quote together, with the source and capture scope. Text display shortens long values; add --json for complete matching records. Substitute your own saved handle.

Request a preview when a page overview would help you interpret the content or find navigation. It shows the page in reading order. In this example, section[0] contains ten quotes; the other two sections contain navigation links. Section numbers include navigation, so they have no gaps.

The fields: line shows field names and types. [] marks a list-valued field; a ratio such as 2/6 means two of six records have a non-null value. Use analog describe <handle> for sample values and field statistics, or export the records you need. The preview contains no sample values.

The pagination note says this save covers only the first page. The withholding note describes content Analog could not confidently return as a record. Read those notes alongside the records to understand the save’s coverage; Fetching explains how to request more pages or expand additional content.

Use analog --guidance view <handle> to request one optional next action. Coverage notes remain visible with guidance off; --complete independently includes hidden fields in the field summary.

Your saved handle and page content may differ.

Reopen the saved page

analog view latest
Output
pagination: this looks like page 1 of a paginated collection (its links reach page 2) — these records cover this page only.
3 sections extracted.
section[0] 10 records · 3 fields
fields: tags:text[], text:text, text_2:text
section[1] navigation 2 links (header) · 4 fields
fields: text:text, url:url, group:text, depth:text
section[2] navigation 2 links (footer) · 4 fields
fields: text:text, url:url, group:text, depth:text
(A single-subject record was also weighed and withheld — Analog couldn't verify enough of the page's facts for a record we'd trust.)

Read one complete quote

analog export latest --section 0 \
--fields text_2,text --limit 1
Output
[
{
"text_2": "by Albert Einstein",
"text": "“The world as we have created it is a process of our thinking. It cannot be changed without changing our thinking.”"
}
]

The export contains the complete quote text. Use your result’s section numbers and field names if the page has changed.

Each record section has records, fields, and its own markdown. Inspect a section when the page contains different kinds of records, such as products and reviews. Read the whole page as Markdown when the surrounding prose matters.

For field statistics, searching, export formats, and comparisons, continue to Working with results. If the result reports a page outline, it identifies regions that remained page context or were not returned as records.

Install Analog in your Python environment and connect an account before running this example.

analog() returns a result and saves it locally. Its structured_content contains the record sections in page order, including navigation. Enumerate them to choose which records to read. For the complete reading order, including prose, use result.sections.

Fetch progress is reported separately in the terminal.

List the record sections

from analog import analog
result = analog("https://quotes.toscrape.com/js/")
for index, section in enumerate(result.structured_content):
print(f"section[{index}]: {len(section.records)} records")
Output
section[0]: 10 records
section[1]: 2 records
section[2]: 2 records

Continue with result from the previous example:

Read the first quote

print(result.structured_content[0].records[0]["text"])
Output
“The world as we have created it is a process of our thinking. It cannot be changed without changing our thinking.”

The record keeps the page’s full text. See Choosing the right Python view for reading sections, collections, and saved results.

Analog never silently edits your data. When something is withheld, uncertain, or partial, the result says so:

  • Field names are marked as guesses when they are guesses. A semantically rich page names cleanly; a thin page falls back to positional names like text_2 — meaning the page gave the field no usable label, not that extraction failed. Rename in one batch with analog rename-fields <handle> text_2=title — and the rename is remembered for the URL, so future fetches of the same page arrive with your names already applied (conservatively: when the page’s fields have visibly changed shape, Analog skips the rename rather than guessing, and you rename once more). If the page merely reshuffles its own placeholder names while the column’s values stay put, your name follows the column. --once renames a single saved result without being remembered.
  • Withheld content is counted. Rows or columns that carried nothing readable are withheld with a disclosed count, never silently.
  • Structural odd-ones-out are flagged. A header row zipped in with data rows is pointed out by index, with a ready-made way to drop it. Dropping it changes the view, not the saved source result.
  • Pagination coverage is stated. If the page’s own markup shows it’s page 1 of 5, the result says these records cover this page only.
  • Saved values retain their full text. Inspection samples may shorten a value with …(+N chars); read its record or export to see it in full. An ellipsis in the stored value is the page’s own visible truncation.

Sponsored placements are data too: pages ship with ads, so ads come through as records — with the platform’s own label (“Sponsored”) preserved as a field value, so filtering them is a one-line choice:

Command
analog export <handle> -f csv --where "badge!=Sponsored"

If the records don’t match the page, see Troubleshooting to check what was captured and what was extracted.

Use local mode when the page’s prose gives you what you need. Analog fetches the page and converts it to Markdown on your machine, without structured extraction, a backend call, or sign-in.

This creates a new local save. Reopen it with --markdown to read the page text; latest now refers to this local result.

Save a local Markdown result

analog browse https://quotes.toscrape.com/js/ --mode local

The response is the page’s Markdown, including its navigation links.

Read the page text

analog view latest --markdown
Output
Quotes to Scrape
# [Quotes to Scrape](https://quotes.toscrape.com/)
[Login](https://quotes.toscrape.com/login)
“The world as we have created it is a process of our thinking. It cannot be changed without changing our thinking.”by Albert Einstein
Tags: change deep-thoughts thinking world
“It is our choices, Harry, that show what we truly are, far more than our abilities.”by J.K. Rowling
Tags: abilities choices
“There are only two ways to live your life. One is as though nothing is a miracle. The other is as though everything is a miracle.”by Albert Einstein
Tags: inspirational life live miracle miracles
“The person, be it gentleman or lady, who has not pleasure in a good novel, must be intolerably stupid.”by Jane Austen
Tags: aliteracy books classic humor
“Imperfection is beauty, madness is genius and it's better to be absolutely ridiculous than absolutely boring.”by Marilyn Monroe
Tags: be-yourself inspirational
“Try not to become a man of success. Rather become a man of value.”by Albert Einstein
Tags: adulthood success value
“It is better to be hated for what you are than to be loved for what you are not.”by André Gide
Tags: life love
“I have not failed. I've just found 10,000 ways that won't work.”by Thomas A. Edison
Tags: edison failure inspirational paraphrased
“A woman is like a tea bag; you never know how strong it is until it's in hot water.”by Eleanor Roosevelt
Tags: misattributed-eleanor-roosevelt
“A day without sunshine is like, you know, night.”by Steve Martin
Tags: humor obvious simile
- [Next →](https://quotes.toscrape.com/js/page/2/)
Quotes by: [GoodReads.com](https://www.goodreads.com/quotes)
Made with ❤ by [Zyte](https://www.zyte.com)