Mercado Livre Mais Vendidos & Ofertas Scraper | $1.5/1K avatar

Mercado Livre Mais Vendidos & Ofertas Scraper | $1.5/1K

Pricing

from $1.50 / 1,000 listing scrapeds

Go to Apify Store
Mercado Livre Mais Vendidos & Ofertas Scraper | $1.5/1K

Mercado Livre Mais Vendidos & Ofertas Scraper | $1.5/1K

Scrape the Mercado Livre Mais Vendidos ranking (top 20 per category) and Ofertas do Dia deals: rank, price, crossed-out price, discount, installments, seller, official store, rating, units sold. $1.50 per 1,000 listings, Brazilian proxies included, blocked pages never charged. JSON, CSV, Excel, API.

Pricing

from $1.50 / 1,000 listing scrapeds

Rating

0.0

(0)

Developer

Gangary

Gangary

Maintained by Community

Actor stats

0

Bookmarked

4

Total users

1

Monthly active users

16 hours ago

Last modified

Features

Limited permissions

Share

mercado-livre-best-sellers-scraper

Mercado Livre Mais Vendidos & Ofertas Scraper | $1.5/1K

US$1.50 per 1,000 listings + US$0.02 per run. Brazilian residential proxies and retries are included; blocked pages are never charged.

Scrape Mercado Livre's "Mais Vendidos" best-seller rankings per category and the "Ofertas do dia" daily deals pages, and get every product back as structured data: rank, price, crossed-out price, discount %, installments, seller, official-store flag, rating, units sold, shipping flags and more.

  • Up to 50 categories in one run, one best-seller ranking each (top 20 per category, which is everything the ranking page shows).
  • Up to 15 pages of daily deals (~48 items per page), deduplicated by item ID.
  • Up to 500 products per run, each with its position in the ranking or deals page.

Em português: raspe o ranking de Mais Vendidos do Mercado Livre por categoria e as Ofertas do dia, e receba posição, preço, preço riscado, desconto, parcelamento, vendedor, loja oficial, nota e vendidos em tabela pronta pra planilha. Até 50 categorias por execução (top 20 de cada, que é tudo o que a página do ranking mostra) e até 500 produtos por execução, com proxy residencial brasileiro incluído. Feito pra achar produto pra revender, pesquisar mercado e acompanhar tendência. Custa US$1,50 por 1.000 produtos mais US$0,02 por execução; página bloqueada não é cobrada.

What you get

One row per product, real output from a daily-deals run:

{
"position": 1,
"itemId": "MLB6167651244",
"productId": "MLB47535705",
"title": "Câmera Inteligente Im7 + 3mp De Resolução Branca Intelbras",
"url": "https://www.mercadolivre.com.br/camera-inteligente-im7-3mp-de-resolucao-branca-intelbras/p/MLB47535705",
"price": 263.41,
"originalPrice": 419.9,
"discountPct": 37,
"currency": "BRL",
"installments": "ou R$ 309,90 em 6x R$ 51,65 sem juros",
"freeShipping": true,
"isFull": true,
"sellerName": "INTELBRAS",
"isOfficialStore": true,
"rating": 4.9,
"soldText": "+50mil vendidos",
"soldQuantity": null,
"isAd": false,
"categoryId": null,
"domainId": null,
"thumbnail": "https://http2.mlstatic.com/D_NQ_NP_892568-MLA99939109103_112025-O.webp",
"mode": "deals",
"scrapedAt": "2026-09-27T18:35:29.404Z"
}
FieldMeaning
modebest-sellers (Mais Vendidos ranking) or deals (Ofertas do dia)
categoryId / positionCategory scraped (null = general ranking) and where the product ranked
price / originalPrice / discountPctCurrent price, crossed-out price and discount %
installmentsInstallment plan as shown on the card (e.g. 6x interest-free)
sellerName / isOfficialStoreSeller and whether it's an official store
rating / soldTextStar rating and units sold, when the card displays them
freeShipping / isFullFree shipping and Fulfillment (FULL) flags
url / itemIdCanonical product link and item ID — join with the search and reviews actors
errorSet only on failed pages — those rows are not charged

Use cases

  • Find products to resell: see what sells most in each category right now, with price, seller and units sold.
  • Arbitrage: compare the daily deals (originalPrice vs price, discountPct) against your own cost or other channels.
  • Weekly trend radar: schedule the same categories every week and track who enters, climbs or drops in the top 20.
  • Category and brand research: count official stores, FULL listings and price ranges among the best sellers of a category.

How to use it

  1. Pick a Mode: Best sellers scrapes the "Mais Vendidos" ranking (one page per category, ~20 items each); Daily deals scrapes the "Ofertas do dia" pages with pagination (~48 items per page).
  2. In best-sellers mode, list Category IDs (format MLB123 — the code at the end of any Mercado Livre category page URL), up to 50 per run. Leave empty for the general ranking. In deals mode this input is ignored (deals always uses the general page).
  3. Set Max items (default 100, up to 500 per run) — the total delivered across all categories/pages.
  4. Run and export — the Deals dataset view gives you a slim rank / item / price / discount table.
InputTypeDefaultNotes
modebest-sellers or dealsbest-sellersdeals always uses the general "Ofertas do dia" page
categoryIdsarray of strings— (empty = general ranking)Format MLB123, up to 50 per run; invalid codes and duplicates are dropped. Ignored in deals mode
maxItemsinteger1001 to 500, total across all categories/pages

Pricing

Pay per event: a small start fee opens the Brazilian residential session, then a flat fee per listing delivered. Blocked pages, failures and invalid categories are never charged — and every run respects the maxTotalChargeUsd budget you set on Apify.

ScenarioApproximate cost
100 listings (1 run)~US$ 0.17
1,000 listings (2 runs, max 500 per run)~US$ 1.54
10,000 listings (20 runs)~US$ 15.40

Run cost limit. Every category costs at least one page load on a residential proxy. If a run keeps costing more than the results it delivers (for example dozens of categories that return almost nothing, or a long streak of blocked or missing pages), it stops opening new categories: the ones not opened come back as rows with error: "run-cost-limit" and are not charged. The first category always runs and normal runs are not affected.

Run it from code

Replace <YOUR_APIFY_TOKEN> with your token from Apify Console → Settings → API & Integrations.

cURL (waits for the run and returns the items):

curl -X POST "https://api.apify.com/v2/acts/gangary~mercado-livre-best-sellers-scraper/run-sync-get-dataset-items" \
-H "Authorization: Bearer <YOUR_APIFY_TOKEN>" \
-H "Content-Type: application/json" \
-d '{"mode": "best-sellers", "categoryIds": ["MLB1055"], "maxItems": 100}'

Python (pip install apify-client):

from apify_client import ApifyClient
client = ApifyClient("<YOUR_APIFY_TOKEN>")
run = client.actor("gangary~mercado-livre-best-sellers-scraper").call(
run_input={"mode": "best-sellers", "categoryIds": ["MLB1055"], "maxItems": 100}
)
for item in client.dataset(run["defaultDatasetId"]).iterate_items():
print(item.get("position"), item.get("price"), item.get("title"))

Node.js (npm install apify-client):

import { ApifyClient } from 'apify-client';
const client = new ApifyClient({ token: '<YOUR_APIFY_TOKEN>' });
const run = await client.actor('gangary~mercado-livre-best-sellers-scraper').call({
mode: 'deals',
maxItems: 200,
});
const { items } = await client.dataset(run.defaultDatasetId).listItems();
console.log(items.length, items[0]);

A run is capped at 500 products, so the synchronous endpoint (which waits up to 300 seconds) is usually enough; for very slow runs start it asynchronously and read the dataset when it finishes.

Integrations

Everything below is built into Apify, no extra setup on our side:

  • Schedules: run the same categories every day or week to follow the ranking over time.
  • Webhooks: get a call to your own endpoint when a run finishes.
  • Make, n8n and Zapier: send each run's rows to Google Sheets, a database, Slack or your product-research board.
  • Google Drive: drop each run's export into a shared folder.
  • Exports: JSON, CSV, Excel, XML or HTML from the dataset, or straight from the API.

Use with AI agents (MCP)

Apify runs a hosted MCP server, so Claude, Cursor, VS Code and other MCP clients can call this actor as a tool. Add this server URL to your client (it signs in with OAuth on first use, or send Authorization: Bearer <YOUR_APIFY_TOKEN>):

https://mcp.apify.com?tools=gangary/mercado-livre-best-sellers-scraper

Then ask in plain words, e.g. "Get today's Mercado Livre daily deals and list the 20 with the biggest discount." Setup details for each client: Apify MCP server docs.

FAQ

Is scraping Mercado Livre legal? The actor reads publicly listed rankings and deal pages — no login, no paywall bypass, and no personal data beyond the public store/seller name already shown on every product card.

Why do some pages come back blocked? Mercado Livre runs aggressive anti-bot protection. When a session gets blocked, the actor drops it, opens a fresh Brazilian residential IP and retries the same page — up to 3 times. If it still fails, the page is abandoned with an error row and you are not charged for it.

Is proxy included? Yes — Brazilian residential proxies are included in the per-listing price. Nothing to configure.

Where do I find a category ID? It is the code that starts with MLB in a Mercado Livre category or ranking page link (for example MLB1055). Paste one per line; anything that does not match the MLB123 format is skipped and not charged.

Why only 20 products per category? The "Mais Vendidos" page itself shows the top 20 per category, and that is everything the actor can read. For more products, add more categories (up to 50 per run).

I listed 50 categories but got fewer rows. Why? Max items caps the whole run at 500 products. Fifty categories × 20 products = 1,000, so split them into two runs (25 categories each).

Is position the rank on the site? Yes. In best-sellers mode it is the rank inside that category's ranking; in deals mode it is the order on the deals pages.

Can I get the deals of one category only? Not in this version: deals mode always reads the general "Ofertas do dia" page and ignores category IDs.

What does a run with no results cost? Only the US$0.02 start fee. Listings are charged one by one as they are delivered, and error rows are free. You can also cap any run with Max total charge on Apify.

How do I get reviews and the full product page? Take the url values from this actor and paste them into the Mercado Livre Product & Reviews Scraper: specs, description, stock and customer reviews.

Honest limitations

  • Best sellers = the top 20 per category — that's everything Mercado Livre's own ranking page shows.
  • Deals mode follows up to 15 pages per run (~48 items each); the site's deal numbering is ambiguous, so items are deduplicated by item ID across pages.
  • Max items is capped at 500 per run; for more volume, schedule multiple runs.
  • Ratings, sold counts and installments appear only when the product card displays them.

Changelog

  • 2026-11-11: run cost limit: a run stops opening new categories when it keeps costing more than it delivers; those come back as run-cost-limit rows, not charged. A browser session that fails to connect now retries on a new IP instead of returning timeout.
  • 0.1.9 (2026-10-30): fixed runs that could end with a no-data row when the page took longer to load. The actor now waits longer for the page and switches to a new session when it gets a captcha.
  • 2026-10-18: first public release.

From the same maker


If this actor helped you, a rating on its Store page helps others find it. Something broke or a field is missing? Open an issue on the actor's Issues tab.

Keywords: mercado livre scraper, mais vendidos mercado livre, ofertas do dia mercado livre, raspar mercado livre, best sellers brazil, preços mercado livre, e-commerce scraper brazil, market research brazil, price monitoring brazil, arbitragem mercado livre.