Bonhams Auction Results & Art Prices Scraper
Pricing
Pay per event
Bonhams Auction Results & Art Prices Scraper
Scrape sold lot data from Bonhams auction results. Collects artist, title, medium, dimensions, estimate range, and hammer price for every sold lot. Ideal for art-market appraisers, dealers, insurers and researchers who need Bonhams price-realized data at scale.
Pricing
Pay per event
Rating
0.0
(0)
Developer
BowTiedRaccoon
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
2 days ago
Last modified
Categories
Share
Extract sold lot data from Bonhams auction results. For each sold lot the actor captures the artist name, artwork title, medium, dimensions, creation year, pre-sale estimate range, hammer price, and sale metadata. Ideal for art-market appraisers, dealers, insurers, and researchers who need Bonhams price-realized data at scale.
What does this actor scrape?
The actor crawls Bonhams.com across three levels:
- Auction results listing — discovers past sales from
/auctions/results/ - Individual sale pages — enumerates all lots within a sale
- Lot detail pages — extracts full data for each sold lot
You can also provide direct URLs to specific lot pages or sale pages and the actor will extract data starting from that level.
Features
- Scrapes complete lot records including estimate range, hammer price, and currency
- Handles GBP, USD, and EUR hammer prices automatically
- Extracts medium and dimensions from catalogue descriptions
- Follows Next.js SSR pages — no JavaScript rendering required
- Residential proxy routing for reliable access
- Supports
maxItemscap for targeted extraction
Input
| Field | Type | Description |
|---|---|---|
maxItems | integer | Maximum number of lot records to scrape. Required. |
startUrls | array | Optional list of Bonhams URLs. Accepts lot pages, sale pages, or the results listing. Defaults to the main auction results listing. |
department | string | Optional department filter (e.g. "Paintings", "Jewellery"). Leave blank to crawl all departments. |
Output
Each record in the dataset represents one sold lot:
| Field | Type | Description |
|---|---|---|
lot_id | string | Unique identifier combining sale ID and lot number |
sale_id | string | Bonhams numeric sale/auction ID |
sale_title | string | Name of the auction sale |
sale_date | string | ISO 8601 date of the sale |
sale_location | string | Venue where the sale took place |
lot_number | string | Lot number within the sale |
artist_name | string | Artist or maker name |
artwork_title | string | Title of the work |
medium | string | Medium or materials (e.g. "oil on canvas") |
dimensions | string | Physical dimensions as listed in the catalogue |
year | string | Year of creation |
low_estimate | number | Lower pre-sale estimate |
high_estimate | number | Upper pre-sale estimate |
estimate_currency | string | ISO 4217 currency for the estimate |
hammer_price | number | Price realized at auction |
sold_currency | string | ISO 4217 currency for the hammer price |
is_sold | boolean | Whether the lot sold |
department | string | Auction department category |
thumbnail_url | string | URL of the lot primary image |
lot_url | string | Full URL of the lot detail page |
Example use cases
- Building an art market price database for valuation and insurance appraisal
- Tracking price realized trends for specific artists across multiple auctions
- Comparing pre-sale estimates to hammer prices for market analysis
- Generating training data for art valuation models