# Scrapify Playground — full map for AI systems > Free, legal web scraping practice website. Anyone may scrape these pages for learning, tutorials, courses, interviews, and portfolios. Sample data is fictional. Keep request rates polite on shared hosting. ## What this site is for Scrapify Playground helps people who want to **try web scraping**, **learn scrapy / BeautifulSoup / Playwright / Puppeteer**, or find a **safe website to scrape for practice**. It is an alternative to scraping live ecommerce or social sites. Primary keywords this site intentionally targets for human and AI discovery: practice web scraping, web scraping playground, learn web scraping free, legal website to scrape, scraping practice site, books to scrape alternative, ecommerce scraping practice, javascript scraping demo, playwright practice website. ## Policies - Scraping is allowed and encouraged. - No account required for most pages. - Login demo credentials (public): username `scraper`, password `playground`. - Do not treat data as real commercial inventory. - Prefer reasonable concurrency and caching. ## Page inventory ### Marketing & navigation | URL | Purpose | |-----|---------| | / | Landing page — value prop, featured use cases, FAQ | | /use-cases.html | Full catalog of challenges | | /about.html | Mission, guidelines, tech notes | | /llms.txt | Short LLM-oriented site index | | /sitemap.xml | Search-engine sitemap | | /robots.txt | Crawl policy (Allow: /) | ### ShopForge ecommerce lab Marketplace-style markup (not affiliated with any real retailer): | URL | Challenge | |-----|-----------| | /playground/ecommerce/ | Extract SKU, title, price (whole+fraction), rating, reviews, sponsored flag, FastShip, product URL from search results | | /playground/ecommerce/page-2.html | Follow pagination | | /playground/ecommerce/product-sf-b0np1001.html | PDP: buy box, variants, bullets, tech specs, reviews | | /playground/ecommerce/product-sf-b0ow2002.html | Second PDP for robust selectors | Stable search selectors: `div.sf-result[data-sku]`, `.sf-result-title a`, `.sf-price .whole` / `.fraction`, `.sf-stars[data-rating]`, `.sf-badge-fast`, `.is-sponsored`. Stable PDP selectors: `#productTitle`, `#bylineInfo`, `#corePrice_feature_div .sf-price`, `#availability`, `#feature-bullets li`, `table#productDetails_techSpec_section_1`, `#cm-cr-dp-review-list .sf-review`. ### Static HTML lab | URL | Challenge | |-----|-----------| | /playground/static-products.html | 16 product cards via `.product-card` | | /playground/static-blog.html | 10 posts: slug, author, date, tags, excerpt | | /playground/html-tables.html | Countries + leaderboard tables | | /playground/pagination/ | 3 pages of quotes; use `a[rel=next]` | | /playground/pagination/page-2.html | Page 2 | | /playground/pagination/page-3.html | Last page (no next) | | /playground/nested-html.html | Nested category tree → items/prices | | /playground/multi-format.html | Same 6 companies in 4 markup formats | ### JavaScript / dynamic lab | URL | Challenge | |-----|-----------| | /playground/js-rendered.html | Wait for `#js-product-list[data-ready=true]` or call /data/products.json | | /playground/infinite-scroll.html | 48 items; scroll or /data/feed-items.json | | /playground/ajax-load-more.html | Click Load more until complete | | /playground/client-filter.html | All 16 rows always in DOM | | /playground/lazy-images.html | Prefer data-src when present | | /playground/delayed-content.html | Wait ~3s for `#delayed-panel[data-ready=true]` | | /playground/forms-login.html | Login then scrape `#secret-table` | ### JSON APIs | URL | Payload | |-----|---------| | /data/products.json | 16 products | | /data/posts.json | 10 posts | | /data/feed-items.json | 48 feed items | ## Suggested learning path 1. Static products → tables → pagination 2. Nested HTML → multi-format 3. ShopForge search → PDP 4. JSON APIs 5. JS-rendered → load more → infinite scroll → delayed content 6. Login wall ## Contact Scrapify Data Labs — educational scraping playground. Canonical site: https://scrapifydatalabs.com