Scraping HiBid.com Auctions with Playwright and Apify

Handling dynamic Angular navigation state for reliable e-commerce data extraction.

HiBid.com is one of the largest online auction platforms in the United States, hosting everything from heavy industrial equipment to vintage cameras. However, programmatically extracting catalog and lot details from their platform presents a significant challenge: it is a heavily dynamic Single Page Application (SPA) built with Angular.

To provide a reliable data extraction solution, I built the HiBid Scraper Actor on the Apify platform. Here is a look at the architecture behind tackling complex, state-heavy DOMs.

The Challenge: Angular State and Infinite Loading

A standard HTTP requests scraper (like BeautifulSoup or standard requests in Python) fails immediately on modern SPAs like HiBid. When you request a catalog page, the server returns a shell. The actual data is populated asynchronously via JavaScript.

Why Playwright?

To mimic a real browser environment, the Actor utilizes Playwright. While Puppeteer is a classic choice, Playwright’s auto-waiting mechanisms handle Angular's complex lifecycle hooks far better. The scraper doesn't just read HTML; it drives a headless Chromium instance.

Output Structure & Use Cases

The Actor normalizes messy, unstructured text blocks into clean JSON. Here is an example of what it outputs for a successful catalog extraction:

{
  "auctionName": "Industrial Machinery Liquidations",
  "lotNumber": "14B",
  "itemTitle": "2019 Caterpillar Forklift",
  "currentBid": 4500.00,
  "bidCount": 12,
  "timeRemaining": "04:12:30",
  "itemUrl": "https://...",
  "images": ["url1", "url2"]
}

Real-World Applications

Why scrape an auction site? The extracted data powers a variety of business needs:

Deploying to the Apify Ecosystem

Because this scraper is deployed as an Apify Actor, it runs entirely in the cloud. It bypasses IP blocks using Apify’s proxy rotation networks and integrates seamlessly with Zapier, Make.com, and standard webhooks. This turns a complex, brittle scraping script into a stable API endpoint.

You can try the HiBid Scraper and view the full JSON output examples on the Apify Store.