Avito Scraper — Listings, Prices & Seller Details avatar

Avito Scraper — Listings, Prices & Seller Details

Pricing

from $9.00 / 1,000 avito item enricheds

Go to Apify Store
Avito Scraper — Listings, Prices & Seller Details

Avito Scraper — Listings, Prices & Seller Details

Scrape Avito.ru by keyword or URL (search, category, item): title, price, location, images, seller, posted date; optional detail enrichment with description, seller profile, and phone number. HTTP-only over Russian residential proxy. MCP-ready.

Pricing

from $9.00 / 1,000 avito item enricheds

Rating

0.0

(0)

Developer

Khadin Akbar

Khadin Akbar

Maintained by Community

Actor stats

0

Bookmarked

1

Total users

0

Monthly active users

13 hours ago

Last modified

Share

Scrape Avito.ru — Russia's largest classifieds marketplace — by keyword or by URL. Get clean, structured JSON for every listing: title, price, location, images, seller, and posted date, plus (with detail enrichment) the full description, item parameters, seller profile, and view count. No login, MCP-ready.

What it does

Give it a search keyword (e.g. iPhone 15, диван угловой) or one or more Avito URLs (search results, a category, or individual item pages). The actor paginates the results, normalizes every listing into a stable schema, and optionally opens each item to enrich it with the full description, specs, and seller details.

Avito renders its catalog with JavaScript and hard-blocks every non-Russian IP at the edge, so the actor drives an anti-detect browser (Camoufox / Firefox) over Russian residential proxies — both built in. You don't supply a proxy.

When to use it

  • Price & market research across a category or city.
  • Competitor / inventory monitoring — track new listings for a keyword on a schedule.
  • Seller sourcing — collect seller name, type (private vs company), and profile URL per listing.
  • Feeding an AI agent / MCP client that needs structured Avito data from a single query.

Do not use it for Avito account actions (messaging, posting) — it is a public, read-only scraper.

Output

One record per listing/item. Core fields:

FieldDescription
idAvito item id
urlCanonical listing URL
titleListing title
priceNumeric price (RUB)
priceLabelPrice as shown (e.g. "27 290 ₽")
locationCity / region
imagesArray of image URLs
sellerNameSeller display name
sellerTypeЧастное лицо (private) / Компания (company)
postedTextPosted date as shown on Avito
descriptionShort snippet
sourceExtraction source

With detail enrichment (enrichDetails, on by default) each record also gets:

FieldDescription
fullDescriptionComplete item description
paramsItem parameters (brand, condition, specs…) as a key/value object
addressFull street address (real estate / auto), metro proximity stripped
sellerProfileUrlLink to the seller's Avito profile
viewCountListing views

Note on phone numbers: Avito gates seller phone reveal behind login / its mobile app, so phone numbers are not reliably scrapable and are not included. Seller name, type, and profile URL are provided instead.

Pricing (Pay Per Event)

EventPrice
Actor start$0.00005
Listing scraped (enrichment off)$0.004 / listing
Item enriched (default)$0.009 / item

You're billed only for results actually returned, capped by your Max results. The run logs the maximum possible cost before it starts.

Input

FieldTypeNotes
querystringSearch keyword. Cyrillic or Latin.
startUrlsarrayAvito search / category / item URLs (auto-detected).
maxResultsintegerHard cap (1–1000, default 50).
enrichDetailsbooleanAdd full detail + seller (default true).
sortByenumrelevance, newest, price_asc, price_desc.
locationPathstringAvito city slug (e.g. moskva) to scope a keyword search.
proxyUrlsarrayYour own RU residential proxies (optional override).

Example input

{
"query": "iPhone 15",
"maxResults": 20,
"enrichDetails": true,
"sortBy": "newest",
"locationPath": "moskva"
}

Run it via API

JavaScript (Apify client):

import { ApifyClient } from 'apify-client';
const client = new ApifyClient({ token: 'YOUR_TOKEN' });
const run = await client.actor('khadinakbar/avito-scraper').call({
query: 'iPhone 15',
maxResults: 20,
enrichDetails: true,
});
const { items } = await client.dataset(run.defaultDatasetId).listItems();
console.log(items);

Python (Apify client):

from apify_client import ApifyClient
client = ApifyClient("YOUR_TOKEN")
run = client.actor("khadinakbar/avito-scraper").call(run_input={
"query": "iPhone 15",
"maxResults": 20,
"enrichDetails": True,
})
for item in client.dataset(run["defaultDatasetId"]).iterate_items():
print(item)

MCP / AI agents

Exposed in the Apify MCP server as apify--avito-scraper. The tool takes a single keyword or URL and returns structured listings — a natural one-call tool for Claude, ChatGPT, or any MCP client doing Russian-market research.

FAQ

Do I need a proxy? No. Russian residential proxy is built in. Avito blocks all non-RU IPs, so the actor will not work without one — which is why it's included.

Why can runs take a while? Avito's Russian-residential IP pool is inconsistent; the actor relaunches the browser on a fresh IP whenever it hits Avito's "access restricted" block page. Most runs succeed, but the occasional retry adds time. Keep maxResults sized to what you actually need.

Does it support city/category filters? Yes, via locationPath (a city slug like moskva) or by passing an Avito URL that already encodes the filters.

Can it get seller phone numbers? No — Avito requires login or its app to reveal phones, so they are not reliably scrapable. The actor returns seller name, type, and profile URL instead.

What if a search returns nothing? You get an empty dataset and a clear status message — no charge for results that don't exist.

This actor collects only publicly available data from Avito.ru and performs no login or account actions. You are responsible for using the output in compliance with Avito's Terms of Service, applicable data-protection laws, and any export/sanctions regulations relevant to your jurisdiction. Use it for legitimate research and market analysis where permitted.