Mercado Livre Data Extraction: Listings, Prices, Sellers

Mercado Livre Scraper
Solutions

How the data reaches you

Delivery is CSV, JSON, XLSX or a REST endpoint we host, with the schema agreed before the first run. Field names can stay in Portuguese, map to your internal names, or ship as both.

Scope follows what you point us at: category paths, seller storefronts, a list of MLB item IDs, catalog /p/MLB pages, or search terms on lista.mercadolivre.com.br. Because search depth is capped, wide categories are split by subcategory, price band and filter facet so coverage is genuine rather than truncated at the ceiling.

Runs are one-off or scheduled daily, weekly or several times a day. Output can land in S3, Google Cloud Storage, an SFTP drop, a database you own, or a BI tool. Monitoring, retries and layout change handling stay with us.

Fields extracted from Mercado Livre listings

Fields are delivered under the names Mercado Livre itself renders, so the output matches what your category team sees on screen.

  • Identity - MLB item ID in both the MLB1234567890 and MLB-1234567890 forms, canonical URL, the catalog /p/MLB parent where one exists, category (categoria), category ID such as MLB1744, and the full breadcrumb.
  • Listing - listing title (título do anúncio), description (descrição), the ficha técnica (spec sheet) and características (features) as attribute pairs, image gallery (galeria de imagens) and video, and condition (condição): novo, usado or recondicionado (refurbished).
  • Price - current price (preço atual), previous price (preço anterior) and the resulting discount, plus instalment wording (parcelamento) such as 12x sem juros (12 instalments, interest free), all parsed out of R$ pt-BR strings into clean numeric BRL.
  • Seller - seller name (nome do vendedor), Loja Oficial (official store) and Mercado Shops flags, MercadoLíder (top seller status) Gold or Platinum level, reputation (reputação) and the termômetro (thermometer) band, and units sold (quantidade vendida) in its published bucket such as +5 mil vendidos (over 5,000 sold).
  • Shipping - free shipping (frete grátis), Enviado por Full (shipped by Full) under Mercado Envios Full, delivery window and shipping cost resolved against a CEP (Brazilian postcode) you nominate.
  • Placement - the Patrocinado (sponsored) flag from Product Ads set against organic rows, grid position, and the wid MLB id carried in the search result tracking fragment.
  • Buy box - the vendedor em destaque on a catalog page plus the competing offers under outras opções de compra, each with its own seller and price.
  • Reviews and questions - average rating (avaliação média) in stars, count of reviews (opiniões), individual review score, text and date, and the questions and answers (perguntas e respostas) thread on the listing (anúncio).
  • Status - ativo (active), pausado (paused) or finalizado (ended), with the collection timestamp stamped on every row.

Classifieds are a separate shape. Vehicles, real estate and services live in the VIS tree under MLB1743 Carros, Motos e Outros (cars, motorcycles and others) and MLB1744 Carros e Caminhonetes (cars and pickups), reached through location paths such as lista.mercadolivre.com.br/veiculos-em-rio-de-janeiro/, and they carry a different field set from retail items.

Fields extracted from Mercado Livre listings
What repeated crawls show that one pull cannot

What repeated crawls show that one pull cannot

A single crawl is a photograph. Most of the commercial value on Mercado Livre only appears when the same URLs are revisited on a schedule.

Price is the obvious series, but the buy box is the more interesting one. On a /p/MLB catalog page the vendedor em destaque can change while the displayed price barely moves, so repeated snapshots show who is winning the listing, how long they hold it, and what it costs them to keep it.

Sales volume is published only in masked buckets, +5 mil vendidos and similar, and exact stock is never exposed publicly. Any units sold series has to be derived from bucket transitions between snapshots, which only works if the earlier snapshot was kept.

Listings are not permanent. Status moves between ativo, pausado and finalizado; pausado happens automatically when stock reaches zero and can also be set by moderation. URLs go dead without notice. Once an anúncio is gone its price history cannot be recovered from the site, so every row is snapshotted at collection time rather than re-derived later.

Shipping is state dependent too. Frete grátis eligibility, cost and delivery window are computed against the buyer CEP, so the same listing behaves differently for São Paulo and for the North and Northeast. Repeating the crawl per CEP turns that into a comparable regional series instead of a single ambiguous number.

What Mercado Livre looks like as a data source

Mercado Livre is the Brazilian arm of the Mercado Libre group, and Brazil is the only market spelled mercadolivre.com.br. Every other country runs on mercadolibre with its own suffix. Internally Brazil is site_id MLB, and that prefix appears in almost every identifier you will handle.

Records are keyed by an MLB item ID, but it is written two ways. An individual seller listing sits at produto.mercadolivre.com.br/MLB-1234567890-slug-_JM, with a hyphen after MLB and the -_JM suffix at the end. A catalog product page sits at www.mercadolivre.com.br/slug/p/MLB1234567890, no hyphen, which is also the form api.mercadolibre.com uses. Any dataset that mixes the two has to normalise the ID before it can be joined.

The two page types mean different things. A produto (product) page is one seller's offer. A /p/MLB catalog page is one product with many sellers competing behind it, and only the buy box winner, the vendedor em destaque, is rendered. The rest sit behind outras opções de compra (other buying options), so reading the visible price alone understates the real offer set.

Search is a third surface. lista.mercadolivre.com.br encodes filters as path segments rather than query strings: _Desde_49 for the offset, _OrderId_PRICE, _PriceRange_100-200, _FullFilter_True, and item condition as _ITEM*CONDITION_2230284 for novo (new) or _2230581 for usado (used).

Prices are BRL in pt-BR format, R$ 1.234,56, where the dot is the thousands separator and the comma is the decimal. Naive float parsing turns a shelf price into a five figure number.

Get a Quote
dev_w
25

Developers

customers
500+

Customers worldwide

pages
1 500 000 000+

Pages extracted

stime
15000+

Hours saved for our clients

Plans

Airplane

€199 / one-time

setup fee - included

Data limits100,000
Frequencyone-time
Run timeup to 5 days
Data storing7 days

Helicopter

€169 / mo

setup fee €499

Data limits250,000
Frequencymonthly
Run timeup to 5 days
Data storing14 days

Glasses

€229 / mo

setup fee €499

Data limits1,000,000
Frequencyweekly
Run timeup to 5 days
Data storing30 days

DNA

€549 / mo

setup fee €799

Data limits3,000,000
Frequency3 times daily
Run timesame day
Data storing90 days

What teams do with Mercado Livre data

Brazilian online retail concentrates heavily on this single marketplace, so a Mercado Livre panel is often the fastest honest read on a category in that market.

Price monitoring is the usual starting point. Brands and distributors track preço atual and parcelamento across every anúncio carrying their model or EAN, find the sellers undercutting a suggested price, and check whether a promotion actually reached the shelf. Because a catalog page shows only the buy box holder, competitor price monitoring is incomplete unless the crawler also opens outras opções de compra.

Sellers use the same data in the other direction: which MercadoLíder Gold and Platinum accounts hold the buy box in their categories, how Enviado por Full listings price against non-Full ones, and how a Loja Oficial storefront sits against marketplace resellers.

Assortment research pulls category trees, ficha técnica attributes and the masked vendidos (sold) buckets to size what actually moves in a subcategory before committing to an import. Ad teams separate Patrocinado placements from organic rows to measure real share of search instead of paid visibility.

Text from opiniões and perguntas e respostas feeds product development, listing copy and voice of customer work written for Brazilian buyers rather than translated at them.

Related Case Studies

The Entire Iherb Supplements Catalog, Captured End-to-End in 3 Days

The Entire Iherb Supplements Catalog, Captured End-to-End in 3 Days

Scraping supplement products from iHerb.com with full details, including descriptions and packaging variations.

Learn More about The Entire Iherb Supplements Catalog, Captured End-to-End in 3 Days
The Lowest Allegro Prices from 150K Eans Collected

The Lowest Allegro Prices from 150K Eans Collected

Daily scraping of lowest prices for 150K products on Allegro.pl to support marketplace pricing and margin optimization.

Learn More about The Lowest Allegro Prices from 150K Eans Collected
Ralph Lauren Monitoring on Amazon, 8 Markets Scanned Into One Clean Dataset

Ralph Lauren Monitoring on Amazon, 8 Markets Scanned Into One Clean Dataset

Regular monitoring of Ralph Lauren clothing, footwear, and accessories sold across Amazon subdomains: AE, DE, ES, FR, IT, NL, PL, UK.

Learn More about Ralph Lauren Monitoring on Amazon, 8 Markets Scanned Into One Clean Dataset
Our Blog

Reads Our Latest News & Blog

Learn how to use web scraping to solve data problems for your organization

6 E-Commerce Sites Like eBay to Scrape in 2026

6 E-Commerce Sites Like eBay to Scrape in 2026

If you sell online, run a marketplace, or advise e-commerce clients, you already know why eBay matters: it’s one of the few places where big retailers compete side by side with thousands of small merchants and private sellers.

Top 8 E-commerce Websites to Scrape in 2026 (From Amazon to 1688)

Top 8 E-commerce Websites to Scrape in 2026 (From Amazon to 1688)

E-commerce teams do not just need “some” competitor data anymore. They need a continuous stream of real prices, discounts, stock levels, reviews, and seller behavior from the platforms that actually shape their markets.

How to Scrape Amazon Data: Benefits, Challenges & Best Practices

How to Scrape Amazon Data: Benefits, Challenges & Best Practices

Amazon provides valuable information gathered in one place: products, reviews, ratings, exclusive offers, news, etc. So scraping data from Amazon will help solve the problems of the time-consuming process of extracting data from e-commerce.

scrapeit logo

Why work with ScrapeIt on this market

ScrapeIt is a managed extraction agency. We build the crawler, run it on our infrastructure, repair it when the site changes, and hand over clean files or an API. There is nothing for your team to install or supervise.

Latin American marketplaces need Brazilian egress, careful session handling and locale aware parsing to return anything at all, which is why generic tools often come back empty. We own that engineering, and we say plainly what is and is not obtainable before a project is scoped.

FAQ

Is scraping Mercado Livre legal?

We collect only what a logged out visitor sees on mercadolivre.com.br. We do not create accounts, we do not sign in, and we do not gather personal data about buyers; seller information is limited to the public storefront name, reputação and MercadoLíder level shown on the listing itself. Worth knowing before you scope a project: robots.txt on the domain disallows AI crawlers such as GPTBot, ChatGPT-User, ClaudeBot, Claude-User, PerplexityBot and Amazonbot outright, sets Crawl-delay 5 for Bingbot, and for other agents disallows paths including /gz/, /navigation/, /perfil/vendedor/, /mais-vendidos/MLB, /ofertas?, and the /p/MLB seller-info and specifications sub-paths. There is also no working sitemap; www.mercadolivre.com.br/sitemap.xml returns 404. Marketplace terms of use and the rules of your own jurisdiction apply, so the legal call is one for your counsel. We go through the intended scope with you first and build to what you approve.

Why does the Mercado Livre API return 403 on /sites/MLB/search now?

Because the public REST endpoints are closed to anonymous callers. Checked on 2026-08-25, GET https://api.mercadolibre.com/sites/MLB/search and GET https://api.mercadolibre.com/items/MLB... both answer HTTP 403 with the body {"blocked_by":"PolicyAgent","code":"PA_UNAUTHORIZED_RESULT_FROM_POLICIES","message":"At least one policy returned UNAUTHORIZED."}. Brazilian developers have been reporting the same response on the search endpoint. It is a policy decision rather than a rate limit, so retrying, adding delays or rotating IPs changes nothing. Official access now means a registered application, an approved access token and a data scope tied to that application, which in practice covers your own seller account rather than the whole catalog. For teams that need catalog wide coverage, competitor listings or category level pricing, collecting the public storefront is the practical Mercado Livre API alternative.

How do you deal with the "acesse sua conta" page, and how many search results can you actually pull?

Verified on 2026-08-25 from a datacenter IP, requests to lista.mercadolivre.com.br and to product URLs are redirected to https://www.mercadolivre.com.br/gz/account-verification?go=&tid=, served by the site's own suspicious-traffic frontend with the message "Para continuar, acesse sua conta". The same request sent with no User-Agent header is refused with HTTP 403 before any interstitial. That is a login wall, not a solvable challenge, and we do not sell a way around it or log into accounts. What we control is the request side: Brazilian residential or mobile egress instead of datacenter ranges, a correctly formed and warmed browser session, conservative pacing, and a pinned CEP so shipping fields stay consistent. This is why off-the-shelf Python scrapers commonly return zero rows. Depth is a separate constraint. A result set stops at roughly 2,000 items, about 42 pages, whatever total the page reports, and pagination carries a 1-based item offset in the path (_Desde_49, _Desde_97, _Desde_193) rather than a page number. Full category coverage therefore comes from splitting by subcategory, price band, condition and filter facet, not from paging deeper.

Can you track the catalog buy box and tell Patrocinado listings apart from organic results?

Yes to both, and they are separate jobs. On a /p/MLB catalog page only the vendedor em destaque is rendered, so the crawler also opens outras opções de compra and records the competing sellers with their prices and shipping terms. Repeated on a schedule, that gives buy box ownership as a series rather than a snapshot, including handovers that occur with no visible price change. In search results, each product link carries a tracking fragment shaped like #polycard_client=search-nordic&search_layout=grid&position=N&type=item|product&tracking_id=&wid=MLB&sid=search. The wid holds the real listing ID, position gives the slot in the grid, and an is_advertising flag marks paid Product Ads placements. Keeping that flag is what makes a share of search figure trustworthy, because otherwise sponsored rows inflate whatever visibility metric you build.

Can you scrape other Mercado Libre countries, and what formats do you deliver?

Yes. Brazil is MLB on mercadolivre.com.br; Argentina (MLA), Mexico (MLM), Chile (MLC) and Colombia (MCO) run on mercadolibre domains, in Spanish and in local currency, with their own category trees. The page grammar is similar enough that one crawler design covers several markets, but each needs local egress, its own locale aware price parsing and its own category mapping, and buy box and shipping behaviour differ by country, so we scope them as separate feeds that share a schema. Delivery is identical across markets: CSV, JSON, XLSX or a REST endpoint we host, one-off or on a daily, weekly or intraday schedule, pushed to S3, Google Cloud Storage, SFTP, a database you control or straight into a BI tool.

How does it Work?

Step 1 - Make a Request

You share your needs, expectations, and desired timeframe. We’ll suggest the best solution based on your request and budget.

Step 2 - Configuring Custom Web Crawlers

Our specialists configure the crawlers and extract a sample dataset for your review before proceeding with the full-scale extraction.

Step 3 - Collect and Deliver

Once you approve the sample, we launch the project and start full data collection. We gather, filter, and structure the data for easy use, delivering it on time in your preferred format.

Step 4 - Maintain and Support

Our team manages ongoing processes, monitors website changes, and supports all data extraction cycles. We can also help integrate data into your systems or create dashboards to simplify analysis.

Request a Quote

Tell us more about you and your project information.
Which sites, which fields, how often. A couple of lines is enough.

We reply within 1 business day. No obligation.

scrapiet

Scrapeit Sp. z o.o.
10/208 Legionowa str., 15-099, Bialystok, Poland
NIP: 5423457175
REGON: 523384582