Ana White Furniture Plans Scraper
Pricing
from $2.88 / 1,000 item extracteds
Ana White Furniture Plans Scraper
Search Ana White furniture plans and export materials, tools, cut lists, build steps, images, and source URLs.
Pricing
from $2.88 / 1,000 item extracteds
Rating
0.0
(0)
Developer
Automation Lab
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
20 days ago
Last modified
Categories
Share
Build a searchable catalog of Ana White furniture plans with structured materials, tools, cut lists, dimensions, build steps, images, and canonical source URLs.
Search by project name, process a category, or extract one known plan URL. Each dataset row represents one complete public project plan, ready for a spreadsheet, database, or research pipeline.
What does this Actor do?
The Actor turns public Ana White DIY plan pages into consistent JSON records.
It can:
- search plan titles such as
adirondack chair; - browse the newest project catalog;
- browse exact project-type, room, difficulty, style, or cost catalog filters;
- extract one or more supplied project URLs;
- collect project metadata and requirements;
- preserve ordered step summaries and diagram links;
- return canonical links for source attribution.
The Actor uses lightweight server-rendered pages. It does not download images or PDFs, so runs remain fast and compact.
Who is it for?
Use this Actor if you are:
- a woodworker comparing lumber and tool requirements;
- a researcher cataloging Ana White DIY projects;
- a content or data team organizing furniture-plan metadata;
- an educator preparing a searchable project index;
- a developer feeding plan records into an app or data pipeline;
- an operations team scheduling periodic catalog snapshots.
It is designed for structured cataloging, not for rendering printable plans or reproducing the source website.
Why use this Ana White plans extractor?
A generic page-text scraper returns one large block of text.
This Actor separates useful project concepts into stable fields:
- title and summary;
- difficulty, project type, and room;
- dimensions and dimension diagrams;
- materials and shopping-list entries;
- tools;
- cut-list sections;
- cutting and general instructions;
- ordered build steps;
- project, diagram, and step images;
- PDF link when exposed;
- canonical source URL.
That structure makes projects easier to filter, compare, and export.
What data can I extract?
| Field | Meaning |
|---|---|
title | Project-plan title |
summary | Source overview of the project |
difficulty | Difficulty label when present |
categories | Project-type categories |
rooms | Room or placement categories |
styles | Source-published style labels |
videoUrls | Source-linked public build videos |
dimensions | Text accompanying the dimension diagram |
dimensionImages | URLs of dimension diagrams |
materials | Shopping-list or material sections |
tools | Tool names identified by the plan |
cutList | Cut-list entries or sections |
cuttingInstructions | General cutting guidance |
generalInstructions | General assembly guidance |
steps | Ordered step numbers, summaries, first imageUrl and all imageUrls; diagram-only steps retained |
images | Deduplicated finished, dimension, and step images |
pdfUrl | Plan PDF link when available |
canonicalUrl | Canonical Ana White source URL |
scrapedAt | Extraction timestamp in ISO 8601 format |
Fields can be empty when a source plan does not publish that section.
How to scrape Ana White furniture plans
- Open the Actor in Apify Console.
- Enter a title query, such as
farmhouse table. - Optionally add specific plan or category URLs.
- Choose the maximum number of plans.
- Click Start.
- Open the Dataset tab.
- Export results as JSON, CSV, Excel, XML, or another supported format.
Start with a small maxItems value while testing a workflow.
Input parameters
query
Optional case-insensitive title substring, up to 200 characters, with query whitespace collapsed. Direct plan URLs ignore this filter and run first; catalog discovery requires both this query and any URL filters to match.
Examples:
adirondack chairfarmhouse tablechicken coopplanter box
Leave it blank to browse the newest plans when no URLs are supplied.
startUrls
Optional list of public ana-white.com woodworking URLs.
Supported URL types:
- an individual
/woodworking-projects/...plan; - the
/planscatalog, with exacttype,room,difficulty,style, orcostlabels; /plans?search=...for title substring matching,configurator=1for plans with public configurators, andsort=newest|today|all-time(default newest);- the old
/woodworking-projectscatalog alias; - old category and skill-level paths whose last segment matches an exact catalog label after slug normalization. Unsupported seasonal/holiday mappings fail rather than returning unrelated plans.
/plans?page=2 starts at the second page equivalent. Legacy catalog page remains zero-based. Unknown URL parameters fail validation. Configurator filtering does not execute a configurator.
Other hosts and unrelated Ana White paths fail validation. Only each entry's url is used; the generic request-list editor's method, headers, payload and userData fields are ignored.
maxItems
Global maximum unique canonical plan records to save across all inputs. Duplicates do not count. Billing limits can stop earlier; catalog discovery is skipped when direct inputs already fill the limit.
- Default:
20 - Minimum:
1 - Maximum:
10000
maxPages
Maximum 30-plan page equivalents after filtering for each discovery URL, starting at its requested page. The public embedded catalog is fetched once, then filtered and sliced deterministically, rather than fetching repeated listing pages. maxPages=2 permits up to 60 matching discoveries; maxItems still bounds saved unique rows.
- Default:
10 - Minimum:
1 - Maximum:
100
Direct plan URLs do not need pagination.
Input examples
Search for Ana White Adirondack chair plans:
{"query": "adirondack chair","maxItems": 5,"maxPages": 2}
Extract one known plan:
{"startUrls": [{"url": "https://www.ana-white.com/woodworking-projects/farmhouse-table-updated-pocket-hole-plans"}],"maxItems": 1,"maxPages": 1}
Build an outdoor-seating catalog:
{"startUrls": [{"url": "https://www.ana-white.com/woodworking-projects/categories/outdoor-projects/outdoor-seating-lounging-and-accents"}],"maxItems": 10,"maxPages": 3}
Output example
A shortened illustrative project record has this shape (content and media paths vary by source template):
{"title": "Modern Easy Build Adirondack Chair","summary": "Build the most popular—and most built—Adirondack chair plans on the internet with this modern, easy-to-follow design.","difficulty": "Intermediate","categories": ["Outdoor Seating, Lounging and Accents"],"rooms": ["Outdoor"],"dimensions": "Dimensions shown in diagram for modern Adirondack chair","dimensionImages": ["https://www.ana-white.com/sites/default/files/images/2x4%20modern%20adirondack%20chair%20dimensions.jpg"],"materials": ["3 - 2x4 @ 104-5/8 inches long"],"tools": ["Tape Measure", "Speed Square", "Circular Saw"],"cutList": ["5 - 2x4 @ 19-1/2 inches - legs and horizontal supports"],"cuttingInstructions": "It may be easier to pre-finish your boards before cutting.","generalInstructions": "Work on a flat level surface.","steps": [{"number": 1,"summary": "Cut the chair stringers and build the arms with exterior screws and wood glue.","imageUrl": "https://www.ana-white.com/sites/default/files/2020-04/2x4%20modern%20adirondack%20chair%20step%201.jpg"}],"images": ["https://www.ana-white.com/sites/default/files/ana%20white%20adirondack%20chair%20plans.png"],"pdfUrl": null,"canonicalUrl": "https://www.ana-white.com/woodworking-projects/modern-easy-build-adirondack-chair","scrapedAt": "2026-08-31T12:00:00.000Z"}
The complete row includes every available material, tool, cut, step, and image.
How much does it cost to scrape Ana White furniture plans?
The Actor uses pay-per-event pricing:
- $0.005 once per run for the
startevent; - $0.0048 per saved plan on the BRONZE tier for the
itemevent.
Approximate BRONZE-tier examples:
| Saved plans | BRONZE-tier charge calculation |
|---|---|
| 1 | one $0.005 start event + one $0.0048 item event |
| 5 | one $0.005 start event + five $0.0048 item events |
| 10 | one $0.005 start event + ten $0.0048 item events |
| 100 | one $0.005 start event + one hundred $0.0048 item events |
Failed, duplicate, or rejected pages are not charged as items. Subscription tiers apply progressively lower per-plan prices. Apify shows the applicable price before a run.
Search, catalog, and direct-URL behavior
The public catalog payload contains the plan index. The Actor safely JSON-decodes it without executing page scripts and applies title-substring search and exact URL filters locally. This avoids the redesigned site's initially unfiltered cards. This title search intentionally does not search metadata or descriptions.
Discovery is ordered deterministically by newest publication, today's views, or all-time views, then bounded by 30-plan page equivalents and the unique item limit. Every selected project is opened for complete detail fields. Discovery records also retain all source-index type/style labels, which may be broader than the detail page's primary category; direct-only records use the detail page labels. A recognized no-match succeeds empty; a missing or changed catalog payload fails diagnostically.
Supplied detail URL variants (host, trailing slash, hash and query) are normalized before requests, and records are deduplicated by canonical URL before saving or charging.
If both a query and URLs are supplied, direct URLs are processed first and matching catalog results can fill the remaining limit.
Reliability and error handling
The Actor validates status codes, content type, page shape, and supported hosts.
Temporary timeouts, connection failures, HTTP 429 responses, and temporary server errors receive bounded retries with backoff.
The run fails instead of returning misleading empty records when:
- a supplied URL is malformed;
- a URL belongs to another domain;
- a stable 404 is returned;
- a detail URL is not a woodworking plan;
- Ana White returns an unrecognized challenge page;
- a required plan title cannot be parsed.
A legitimate search with no matches succeeds with an empty dataset.
Tips and limitations
- Search uses case-insensitive title substring matching, not full semantic search.
- Shopping and cut lists preserve individual preformatted lines; optional sections remain null or empty.
pdfUrlis only an actual source-linked.pdfURL, never an Etsy listing or email-print offer. Public video links and all step images are included when published.- Source plans vary, so some optional fields are empty.
dimensionsmay describe an image rather than contain numeric measurements.- Images and PDFs are linked, not downloaded into Actor storage.
- The Actor processes public English-language Ana White pages.
- It does not extract comments, user accounts, or community-project submissions.
- It does not track historical changes by itself; schedule repeated runs and compare datasets in your own workflow.
- Very large runs depend on the current size and availability of the public catalog.
Export and integration workflows
Common workflows include:
- Spreadsheet catalog — export CSV or Excel and filter projects by room, difficulty, or tools.
- Material comparison — normalize
materialsandcutListin a downstream script. - Project search index — store titles, summaries, and canonical URLs in a database.
- Recurring snapshot — schedule the Actor and compare canonical URLs between runs.
- Content research — review step counts and project categories while preserving source attribution.
- Data pipeline — use the dataset API from Make, Zapier, n8n, or custom code.
The default dataset remains isolated per run.
Run with the Apify API
Replace YOUR_TOKEN with an Apify API token.
cURL
curl -X POST \"https://api.apify.com/v2/acts/automation-lab~ana-white-furniture-plans-scraper/runs?token=YOUR_TOKEN" \-H "Content-Type: application/json" \-d '{"query":"adirondack chair","maxItems":5,"maxPages":2}'
JavaScript
import { ApifyClient } from 'apify-client';const client = new ApifyClient({ token: process.env.APIFY_TOKEN });const run = await client.actor('automation-lab/ana-white-furniture-plans-scraper').call({query: 'adirondack chair',maxItems: 5,maxPages: 2,});const { items } = await client.dataset(run.defaultDatasetId).listItems();console.log(items);
Python
from apify_client import ApifyClientclient = ApifyClient("YOUR_TOKEN")run = client.actor("automation-lab/ana-white-furniture-plans-scraper").call(run_input={"query": "adirondack chair","maxItems": 5,"maxPages": 2,})items = client.dataset(run["defaultDatasetId"]).list_items().itemsprint(items)
Use with Apify MCP
Add the Actor to Claude Code:
claude mcp add --transport http apify \"https://mcp.apify.com?tools=automation-lab/ana-white-furniture-plans-scraper"
Claude Desktop setup: add this server object to your MCP configuration.
Cursor setup: open MCP settings and add the same HTTP server object.
VS Code setup: add the same server under your MCP servers configuration.
{"mcpServers": {"apify": {"url": "https://mcp.apify.com?tools=automation-lab/ana-white-furniture-plans-scraper"}}}
Example prompts:
- “Find five Ana White Adirondack chair plans and compare their material lists.”
- “Extract this Ana White farmhouse table URL and summarize the tools and cuts.”
- “Build a dataset of outdoor seating plans with source links and step counts.”
Legality and responsible use
This independent Automation Lab Actor reads publicly accessible pages and is not affiliated with or endorsed by Ana White. It uses no AI to generate or transform plan records. No paid third-party API, login or proxy is required.
You are responsible for:
- complying with Ana White's terms and applicable laws;
- using reasonable run sizes and schedules;
- respecting copyright and source attribution;
- avoiding republication of protected plan content without permission;
- handling exported data according to your organization's policies.
The Actor does not bypass login controls or collect private account data.
Diagnostics and privacy
Failed operations send sanitized diagnostic input, exceptions, and Actor/build/run IDs to our private GlitchTip service for repair. Secret fields and URL queries are removed; reports are retained for 30 days. No private accounts or email-print access are collected.
Successful results, input and run logs remain in your Apify run storage under your account's retention settings; you can delete them in Console or by API. The Actor maintains no cross-run cache or sessions and sends no data to an AI provider. Only public plan content and source links are saved.
For help, open an issue on the Actor's Apify page and include a run link plus a description of the expected result; do not post credentials or private data.
Troubleshooting
Why did my search return no rows?
Try a shorter title phrase, verify spelling, and test the same phrase on the public catalog. A valid no-match query returns an empty dataset.
Why did a start URL fail?
Confirm that it uses a supported https://www.ana-white.com/woodworking-projects... plan or /plans catalog URL. Use exact public catalog labels for filters. Unsupported old category/seasonal mappings fail clearly. Blog, community, account, and third-party start URLs are intentionally rejected.
Why are some material or dimension fields empty?
Older and newer plan templates publish different sections. Empty optional fields reflect the source page rather than invented values.
How can I reduce run time?
Lower maxItems and maxPages, or provide direct plan URLs when you already know the projects you need.
FAQ
Can it scrape Ana White DIY plan categories?
Yes. Supply a supported woodworking category URL and the Actor discovers and enriches project pages up to your limits.
Can it extract Ana White free plans?
It extracts public woodworking project pages reachable without authentication. Availability and licensing remain determined by the source.
Does it download plan images or PDFs?
No. It returns absolute URLs, which keeps the dataset lightweight.
Can I schedule monitoring?
Yes. Use an Apify Schedule and compare each run's canonical URLs or field values downstream. The Actor itself does not maintain a historical database or send alerts.
Are comments included?
No. The output focuses on project-plan data and excludes comments and user profiles.
Is a proxy required?
No automatic proxy mode is enabled. Current public pages are available through direct server-rendered HTML.
Related Automation Lab Actors
For broader website extraction, consider:
- Website Content Crawler for general multi-page text collection;
- Website Screenshot Generator when a visual page capture is the required output.
Use this Actor when you need Ana White-specific project structure rather than generic page content.