Solutions › Brand protection & counterfeit monitoring
Brand protection is the one scraping workload where the images are the payload. Everywhere else on this site, product photos are waste bytes you would happily drop. Here the photo is the evidence: it is what proves a listing is a copy of your design rather than a similar product, and it is what a marketplace complaint form asks you to attach. That single difference changes the traffic profile, the cost model and the way you should measure success.
It is also a workload that never finishes. Listings are removed and reappear under a new seller within days, so the crawl runs at a flat rate for years rather than in a burst.
The population that runs this is much wider than the handful of enforcement agencies. Any own-brand seller with a registered design or trademark ends up doing it in-house, because nobody watches a catalogue as closely as the person whose catalogue it is.
A text-only crawl is measured in kilobytes per record. A listing captured with its full image set is measured in megabytes, and the images are the large majority of it. Plan sizing that works for a price monitor will be wrong here by an order of magnitude, and the failure mode is discovering that mid-month.
Two practical points follow.
Do not filter images out. BotProxy supports per-credential request filters, which refuse requests to URL patterns you never meant to fetch — and blocked requests are not billed. On most workloads the advice is to cut third-party assets aggressively. Here the advice is narrower: cut fonts, analytics, tag managers and ad exchanges, which on a marketplace page can be a real share of the bytes, and leave the CDN that serves the product photos alone.
Fetch each image once. Store a hash alongside it. Marketplaces reuse the same image across many listings and many sellers, so a hash index both removes the re-download and does the matching work for you: the same photo appearing under a second seller is the signal you are looking for.
On a marketplace, geography is not an access question, it is a question of whether you captured the right thing. Assortment, price, shipping options and sometimes the presence of the listing itself follow the IP. A listing that is invisible from a US exit may be the first result from a French one.
This matters more here than in ordinary price monitoring, because the output is used to assert a right that exists in a specific territory. The listing you need to document is the one a buyer in the market where you hold the registration actually sees. Pin the exit country in the login and keep one country per dataset. All locations are included on every plan, so running the same query set from several countries costs nothing extra in plan terms.
Direct probing of public-data targets has also found servers that answer a US datacenter IP normally and return 403 to a European one. If a marketplace is refusing you outright, match the exit country before debugging anything more exotic.
Every request through BotProxy runs inside a session, and a session holds one exit IP for its lifetime. If you do not supply a session id, a default session is used and every request leaves from the same address. The session lives in the proxy login:
login + location + SESSIONID
pxu1000-0+FR+px-007 # French exit, worker 7
pxu1000-0+US+px-007 # same worker, US view of the same query
Measured across 268 targets in production traffic, 28 show failure rates climbing sharply as the same request volume is concentrated onto fewer exit IPs. The most extreme case in that set moved from 2.4% failures spread across the pool to 73.3% concentrated — same target, same requests. What is being enforced is a request budget per address, not a judgment about where the address lives.
Defaults that suit this workload:
Large marketplaces run commercial WAFs that fingerprint the TLS and HTTP/2 handshake, so a default Python or Go client is identified as automation before a single header is read. Anti-Detect Mode rewrites the handshake to match a real browser, which is what gets past AWS WAF, Imperva and Cloudflare fingerprint checks. It is on by default.
Two caveats. It works as a man-in-the-middle, so your client must accept the proxy's certificate. And the browser profile supplies the User-Agent, replacing the one your client sends.
A takedown is a claim you may have to defend, and a scraped page is only useful as evidence if you can say what it looked like, when, and from where. That puts a few requirements on the pipeline that other scraping workloads do not have.
A block on a marketplace frequently arrives as HTTP 200 with a page that has no listing on it. If your pipeline validates on status codes, that page is stored as a successful capture of an empty result — which reads exactly like a listing that was taken down. The consequence here is worse than a gap in a price series: you will conclude that an enforcement action worked when the listing is still live, and stop watching it.
Assert on the extracted content. A capture with no title, no seller and no images is a failure whatever the status line said, and it should re-queue rather than close the case.
One more limit, and it is ours rather than technical. This page is written for rights holders monitoring copies of their own registered designs and marks. Complaint tooling can also be pointed at competitors selling lawfully, and we do not want that traffic. The Acceptable Use Policy is the binding version.
Several marketplaces publish rights-holder programmes with their own search, image-matching and bulk-submission tooling, and those are better than anything you will crawl. Use a proxy for the marketplaces that offer nothing, for the sites outside any programme, and for the recheck sweeps that tell you whether a removal held.
Paste your URL into the live tester and see the real response before you create an account. Every plan includes all locations, Anti-Detect Mode and the Browser API, and is billed on traffic volume alone.
Test your target See plans Read the documentation
Licensing boards, Secretary of State business registries, county assessors and recorders. Roughly 1,450 separate government domains, each running its own stack and its own WAF.
Company and professional profiles, directories and firmographic enrichment — long-running pipelines that re-check the same records on a schedule.
Marketplace and retailer product pages, price history, stock and assortment tracking across many sites at once.
Search result pages by keyword and locale, rank monitoring and share-of-voice reporting for agencies and in-house teams.
Airline and OTA fare and availability checks, where the answer depends on the country the request comes from.
Listing portals plus the county assessor, recorder and land-record sources that carry the authoritative ownership and tax data.
Marketplace listings and product images collected on a schedule, to find copies of your own products and document them for a takedown.