MyArtBroker.com Artist & Print Scraper
Pricing
from $5.00 / 1,000 results
MyArtBroker.com Artist & Print Scraper
Scrape MyArtBroker.com artist profiles and print editions with real cross-auction realized prices and a per-artist market-index rollup. No login required.
Pricing
from $5.00 / 1,000 results
Rating
0.0
(0)
Developer
Artsiom Kunitsyn
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
4 days ago
Last modified
Categories
Share
myartbroker-scraper
Scrapes artist profiles and prints/editions from MyArtBroker.com, a UK-based secondary-market print brokerage and price-guide platform (Banksy, Warhol, Hockney, Hirst, and 290+ other artists) โ via the site's own embedded page data, no login required.
Contents
๐ Key features
- Two entity types, one Actor. Set
entityTypetoartworks(prints/editions) orartists. - A genuinely free, rich artist rollup. One fetch per artist returns a real, server-computed market index: recorded auction sale count, annual growth %, average and total sale value across 8 currencies, and a full historical price-index time series going back years โ no per-artwork fan-out needed at all, unlike most per-artist rollups in this space.
- Real cross-auction-house realized-price history per edition โ hammer price, buyer's-premium price, and seller net return, in 8 currencies, sourced from real houses (Christie's, Sotheby's, Phillips, and others). Closer to an auction house's realized-price archive than a typical marketplace listing.
- No fabricated "sold" flag. MyArtBroker prices fungible print editions, not unique inventory โ instead of a sold/unsold boolean, artwork records carry real demand signals: how many people are registered wanting to buy, sell, or already own a copy. Every artist/artwork is scraped and pushed as-is โ no push-time filter narrows what you pay for.
- All 8 currencies, always. Every price field ships as GBP/USD/EUR/AUD/CAD/JPY/HKD/CNY columns โ pick the one you need, or use them all. Never an opt-in currency selector to configure.
- Delta mode built in. Every run classifies each item as
new,changed,unchanged, ordelistedagainst a persisted baseline. maxItemsdefaults to 50 โ a fast preview, and what keeps an unconfigured run within Apify's automated 5-minute QA check. MyArtBroker is a curated, relatively small marketplace (293 artists) โ clearmaxItems(null) for a full run. Real-scale tested: a full 292-artist run and a 5,000-artwork run both completed with 0 errors on real Apify infra.
๐ Output
One dataset item per artwork or artist, depending on entityType โ see
.actor/dataset_schema.json for the full field list, or the
Output tab's Artworks / Artists views for a readable table.
Example artwork record (a print that's part of a series):
{"source": "myartbroker","entity_type": "artworks","external_id": "aw-7","url": "https://www.myartbroker.com/artist-banksy/series-girl-with-balloon/artwork-girl-with-balloon-unsigned-print-2004","title": "Girl With Balloon","artist_id": "at-8","artist_name": "Banksy","artist_slug": "banksy","artist_url": "https://www.myartbroker.com/artist-banksy","collection_slug": "girl-with-balloon","collection_title": "Girl With Balloon","collection_taxonomy": "series","format": "Unsigned Print","signed": "unsigned","year": 2004,"medium": "Screenprint","genre": "Street & Urban","edition_size": 600,"condition": "excellent","width_cm": 50,"height_cm": 70,"poa": false,"list_price_min_gbp": 40000,"list_price_min_usd": 55000,"list_price_min_eur": 45000,"list_price_min_aud": 80000,"list_price_min_cad": 80000,"list_price_min_jpy": 8660000,"list_price_min_hkd": 420000,"list_price_min_cny": 360000,"list_price_max_gbp": 80000,"list_price_max_usd": 110000,"list_price_max_eur": 90000,"list_price_max_aud": 150000,"list_price_max_cad": 150000,"list_price_max_jpy": 17320000,"list_price_max_hkd": 850000,"list_price_max_cny": 730000,"aagr": -7,"buy_interest_count": 302,"sell_interest_count": 0,"owned_count": 0,"auction_appearance_count": 7,"auction_sale_count": 1,"last_auction_date": "March 2026","last_auction_house": "Christie's London - United Kingdom","last_hammer_price_gbp": 70000,"last_realized_price_gbp": 88900,"change_type": "new"}
Example artist record:
{"source": "myartbroker","entity_type": "artists","external_id": "at-8","url": "https://www.myartbroker.com/artist-banksy","name": "Banksy","slug": "banksy","tier_level": 1,"total_artworks": 269,"total_collections": 64,"num_recorded_sales": 425,"annual_growth_pct": -8,"avg_sale_price_gbp": 32318,"avg_sale_price_usd": 43367,"avg_sale_price_eur": 37358,"total_sale_value_gbp": 13735289,"total_sale_value_usd": 18431151,"market_index_latest": 55.69,"market_index_date": "2026-08-16","change_type": "new"}
๐ง Input
| Field | Type | Default | Description |
|---|---|---|---|
entityType | string | artworks | artworks (prints/editions) or artists. |
maxItems | integer | 50 | Stop after pushing this many items. Set to null for a full crawl. |
mode | string | auto | auto / full / incremental โ see Incremental mode. |
concurrency | integer | 10 | How many artist/artwork pages to fetch in parallel (validated live up to 20, no blocking). |
impersonate | string | chrome | curl_cffi TLS-impersonation target. |
proxyConfiguration | object | off | Apify Proxy config โ not needed; no anti-bot friction found. |
๐ฅ Input examples
Default preview (50 artworks):
{ "entityType": "artworks" }
Full artist directory (293 artists, ~1 fetch each):
{ "entityType": "artists", "maxItems": null }
Full artwork catalog (every print/edition for every artist โ one listing-page fetch per 12 items plus one detail-page fetch per item, so this is the slower, more thorough option):
{ "entityType": "artworks", "maxItems": null }
๐ Incremental (delta) mode
auto mode does a full scan the first time it runs for a given entityType, then only pushes
new/changed items on later runs. Only an uncapped run (no maxItems limit reached) can detect
delistings or update the baseline.
๐ How to scrape MyArtBroker.com
Every page on the site is a Next.js server-rendered page that embeds its own data as a
__NEXT_DATA__ JSON blob โ this Actor reads that directly rather than parsing rendered HTML text.
Any single artist page also embeds the site's entire current 293-artist directory, so no sitemap or
separate crawl is needed to discover the artist roster; entityType: "artworks" then walks each
artist's own paginated print listing to discover every edition.
โ FAQ
Why don't artwork records have a sold field?
MyArtBroker prices fungible print editions โ a format like "Girl With Balloon (Unsigned Print)"
represents up to 600 individual copies, not one unique object โ so there's no meaningful
sold/unsold state the way there is on a marketplace selling unique originals. buy_interest_count/
sell_interest_count/owned_count are the real demand signals MyArtBroker itself surfaces instead.
Is auction_history the complete sale history for an edition?
Not necessarily for anonymous (non-logged-in) access โ MyArtBroker's own interface shows a
"you've reached your data view limit" message on deeper auction history. In testing, a real,
actively-traded Banksy edition came back with 7 listed auction appearances but only 1 carrying
actual realized-price data. auction_appearance_count and auction_sale_count are reported
separately for exactly this reason โ check both rather than assuming the list is exhaustive.
Why is total_collections/num_recorded_sales/market_index_latest empty for some artists?
total_collections is 0 for artists whose catalog isn't organized into named series โ a real,
common case, not a bug. The market-index fields (num_recorded_sales, annual_growth_pct,
avg_sale_price_gbp, market_index_series) only populate for artists MyArtBroker has enough real
auction-sale history to compute an index for โ an artist with no recorded sales legitimately has
nothing to index yet.
Can I get prices in a specific currency, or all of them? Both, always โ every price field (list prices on artworks, average/total sale value on artists) ships as 8 separate columns (GBP/USD/EUR/AUD/CAD/JPY/HKD/CNY), so "a specific one" is just the column you read and "all of them" is the default output, no currency-selector input needed.
Does the currency data have any known quirks? One real one in MyArtBroker's own source data, observed on multiple artists (including Banksy): their sales-summary data occasionally lists one currency twice. This Actor takes the first occurrence (every duplicate seen carried an identical value anyway) rather than letting the second silently overwrite it โ invisible in the final output either way, but noted here for transparency.
Why do some artwork URLs have two path segments and others three?
An artwork that belongs to a named series (e.g. Banksy's "Girl With Balloon") gets a three-segment
URL (/artist-X/series-Y/artwork-Z); a standalone artwork with no series gets a two-segment one
(/artist-X/artwork-Z) โ both are real, confirmed-live URL shapes, not an inconsistency.
Does this need a proxy? No โ no anti-bot friction was found anywhere on this site. Cloudflare sits in front, but a plain request with a normal browser User-Agent passes cleanly (tested at concurrency 20, zero blocking).