2ememain Scraper avatar

2ememain Scraper

Pricing

from $1.20 / 1,000 listings

Go to Apify Store
2ememain Scraper

2ememain Scraper

Extract data from 2ememain.be across thousands of listings — real estate, cars, jobs, and more. Scrape titles, descriptions, images, prices, location, seller names, and contact details, plus every other ad field. Unlimited and extremely fast!

Pricing

from $1.20 / 1,000 listings

Rating

0.0

(0)

Developer

Gen First

Gen First

Maintained by Community

Actor stats

1

Bookmarked

2

Total users

1

Monthly active users

9 days ago

Last modified

Share

Extract listings, prices, photos, seller info, and location data from 2ememain.be — no login, no cookies, and no proxy setup required. 2ememain Scraper turns any 2ememain search, category, single-ad, or seller profile URL into clean, structured JSON you can export to CSV, Excel, JSON, XML, or HTML Table.

What does 2ememain Scraper do?

  • 🔎 Scrapes search & category pages — paste any 2ememain category or search-results URL and collect every listing on it (with automatic pagination).
  • 📄 Scrapes individual ads — paste a single ad URL to get its full detail record.
  • 👤 Scrapes seller profiles — paste a seller/store profile URL to collect every active listing that seller has published (private sellers and professional shops alike).
  • 🚗 Works across all categories — cars and vehicles, electronics, home & garden, fashion, hobbies, services, and more.
  • 🧾 Returns rich structured data — title, description, price, currency, images, location, seller profile, promotion traits, and category-specific attributes (e.g. mileage, fuel, transmission, and options for cars).
  • 🔓 No login or session cookies required.
  • 🌐 Proxy preconfigured — uses Apify residential proxy (country BE) for reliable performance out of the box.
  • 📤 Export anywhere — JSON, CSV, Excel, XML, or HTML Table.

About 2ememain

2ememain.be ("seconde main" — second-hand in French) is one of Belgium's largest French-language online classifieds marketplaces. It hosts a broad range of listings across vehicles, electronics, home & garden, fashion, and services, making it a valuable source of Belgian marketplace and pricing data.

What can you do with this data?

  • Price monitoring — track asking prices for cars, electronics, and other goods over time.
  • Vehicle & product price comparison — benchmark prices across many comparable listings.
  • Seller & inventory tracking — drop a seller's profile URL to monitor a specific shop's or private seller's full inventory.
  • Dataset building — feed structured listing data into analytics, dashboards, or ML pipelines.

How to use 2ememain Scraper

  1. Open the actor on Apify.
  2. Add one or more 2ememain URLs to the urls field (search/category pages, single ads, or seller profiles).
  3. Set maxRecords to cap how many listings to collect (default 100).
  4. Click Start and let the scraper run.
  5. Download the results in JSON, CSV, Excel, XML, or HTML Table.

Input parameters

Input parameterDescriptionRequiredDefault value
urls2ememain URLs to scrape (search/category, single-ad, or seller URLs)true{ "url": "https://www.2ememain.be/l/autos/bmw/#f:10882" }
maxRecordsMaximum number of records to scrapefalse100

Supported input URLs

2ememain Scraper accepts three kinds of URLs:

  • Search / category URL — collects every listing on the page (and paginates):
    • https://www.2ememain.be/l/autos/q/bmw+x5/
    • Category, keyword, attribute filters, and hash-based ranges (e.g. #constructionYearFrom:2017) are all supported.
  • Single ad URL — collects one listing's full detail record:
    • https://www.2ememain.be/v/autos/bmw/m2411592782-bmw-gt-630i-2018
    • Pattern: https://www.2ememain.be/v/<category>/<brand>/<id>-<slug>.
  • Seller profile URL — collects every active listing from one seller (and paginates):
    • https://www.2ememain.be/u/seller/00000000/
    • Pattern: https://www.2ememain.be/u/<slug>/<sellerId>/. Both private sellers and professional shops use this form. Results respect maxRecords.

You can mix all three URL types in the same urls list. Each output record's inputUrl field is set to the original URL you supplied that produced it.

Examples

Input

Scrape 20 search results from a given search URL:

{
"urls": ["https://www.2ememain.be/l/autos/q/bmw+x5/"],
"maxRecords": 20
}

Scrape up to 20 listings from a single seller's profile:

{
"urls": ["https://www.2ememain.be/u/seller/00000000/"],
"maxRecords": 20
}

Output

Seller-profile runs return the same ad records as search and single-ad runs — one record per listing — with each record's inputUrl set to the URL you supplied.

The example below is illustrative and contains no personal data — seller identity, bids, and tracking parameters have been removed or replaced with placeholders.

{
"id": "m2402550856",
"url": "https://www.2ememain.be/v/autos/bmw/m2402550856-a-vendre-bmw-x2-sdrive18i-pack-m-modele-2019",
"title": "À vendre : BMW X2 sDrive18i Pack M – Modèle 2019",
"description": "BMW X2 sDrive18i Pack M en excellent état, très propre et parfaitement entretenue.\n\n• Essence\n• Kilométrage : 71.888 km\n• Moteur 100 kW / 136 ch\n• Boîte automatique\n• Toit panoramique ouvrant\n• Intérieur cuir complet\n• Sièges électriques chauffants\n• Ouverture et démarrage sans clé (Keyless)\n• Caméra de recul\n• Feux LED\n• Jantes 19 pouces\n• Véhicule non-fumeur\n• Très propre intérieur / extérieur\n• Et encore beaucoup d’autres options et équipements\n\nVoiture élégante, sportive, confortable et prête à rouler sans aucun frais.\n\n📩 Si vous êtes intéressé(e), merci de m’envoyer un message privé.",
"categoryId": "96",
"categoryName": "BMW",
"parentCategoryId": "91",
"parentCategoryName": "Autos",
"adType": "RegularFree",
"brand": "BMW",
"price": 22000,
"priceCents": 2200000,
"priceType": "FIXED",
"currency": "EUR",
"bidding": {
"isBiddingEnabled": true,
"isRemovingBidEnabled": false,
"currentMinimumBid": null,
"bids": []
},
"images": [
"https://images.2dehands.com/api/v1/hz-twh-pro-listing/images/01d1ddcc-171e-4894-a6f9-fbb30dd16e03?rule=ecg_mp_eps$_85.jpg",
"https://images.2dehands.com/api/v1/hz-twh-pro-listing/images/5a0205de-6b6c-4fc6-83c0-4c729dd365a5?rule=ecg_mp_eps$_85.jpg",
"https://images.2dehands.com/api/v1/hz-twh-pro-listing/images/291b2a33-6c41-4507-bbb7-e2212d0ff490?rule=ecg_mp_eps$_85.jpg",
"https://images.2dehands.com/api/v1/hz-twh-pro-listing/images/9d1eb653-d19d-416e-bda4-2c3019213103?rule=ecg_mp_eps$_85.jpg",
"https://images.2dehands.com/api/v1/hz-twh-pro-listing/images/69c62a66-6a34-48ce-b0cc-85c9ce5c2223?rule=ecg_mp_eps$_85.jpg",
"https://images.2dehands.com/api/v1/hz-twh-pro-listing/images/926f5977-3bd3-4181-956c-1dce8abf10e6?rule=ecg_mp_eps$_85.jpg",
"https://images.2dehands.com/api/v1/hz-twh-pro-listing/images/640e5fe1-0456-4fd5-a44d-1aa33d730a46?rule=ecg_mp_eps$_85.jpg",
"https://images.2dehands.com/api/v1/hz-twh-pro-listing/images/76a6c74e-f572-4f06-ab45-e3b67f8730d7?rule=ecg_mp_eps$_85.jpg",
"https://images.2dehands.com/api/v1/hz-twh-pro-listing/images/fc397ea5-3be5-44bc-97ec-787fb0a6bbb6?rule=ecg_mp_eps$_85.jpg",
"https://images.2dehands.com/api/v1/hz-twh-pro-listing/images/986fe9ab-5183-4b73-91f2-d2b63e9b8107?rule=ecg_mp_eps$_85.jpg",
"https://images.2dehands.com/api/v1/hz-twh-pro-listing/images/74065308-2cf9-4941-bf83-94bdf4e6c6e6?rule=ecg_mp_eps$_85.jpg",
"https://images.2dehands.com/api/v1/hz-twh-pro-listing/images/b0f2678f-c0f9-405e-9e11-aea5b42398c9?rule=ecg_mp_eps$_85.jpg",
"https://images.2dehands.com/api/v1/hz-twh-pro-listing/images/6880d64d-b8ed-47bb-9978-a09e5d3f0fc1?rule=ecg_mp_eps$_85.jpg",
"https://images.2dehands.com/api/v1/hz-twh-pro-listing/images/c87302ee-e7ba-48f3-a68e-24f7d850e33d?rule=ecg_mp_eps$_85.jpg"
],
"thumbnailUrl": "https://images.2dehands.com/api/v1/hz-twh-pro-listing/images/01d1ddcc-171e-4894-a6f9-fbb30dd16e03?rule=ecg_mp_eps$_85.jpg",
"imageCount": 14,
"createdAt": "2026-05-23T01:14:39Z",
"viewCount": 536,
"favoritedCount": 4,
"isReserved": false,
"isFreeAd": true,
"isAnimalAd": false,
"isCarAd": true,
"isAutomotiveAd": true,
"isCaravansAndCampingAd": false,
"shippingInformation": {
"augmentedLabels": [
{
"shouldShowMoreInfo": false,
"carrierId": null,
"labels": [
{
"label": "",
"price": "",
"deliveryMethod": "UNKNOWN_BECAUSE_DIY",
"carrierName": "Zelf Verzenden"
}
]
}
],
"deliveryType": {
"attributeLabel": "Livraison",
"attributeValueLabel": "Enlèvement",
"attributeValueKey": "Ophalen"
}
},
"traits": ["PACKAGE_FREE"],
"highlights": [],
"attributes": {
"brand": "BMW X2",
"constructionYear": "2019",
"mileage": "71.888 km",
"fuel": "Essence",
"transmission": "Automatique",
"euronormBE": "Euro 6",
"vehicleType": "SUV ou Tout-terrain",
"color": "Autres couleurs",
"upholstery": "Cuir",
"interiorColor": "Noir",
"isTurbo": "Non",
"powerWheelDriver": "Roues avant",
"isImported": "Non",
"options": [
"ABS",
"Aide au maintien de voie",
"Air conditionné",
"Airbags",
"Assistant feux de route",
"Avertissement de sortie de voie",
"Avertisseur d'angle mort",
"Bluetooth",
"Caméra",
"Caméra de recul",
"Capteur de stationnement",
"Chauffage de stationnement",
"Climatisation automatique",
"Commande vocale",
"Feux de jour LED",
"Feux de virage",
"Intérieur cuir",
"Jantes en alliage léger",
"Ordinateur de bord",
"Pack sport",
"Phares Bi-Xénon",
"Phares antibrouillard",
"Phares directionnels",
"Phares entièrement LED",
"Réception radio numérique",
"Régulateur de distance",
"Rétroviseurs électriques",
"Sièges chauffants",
"Sièges sport",
"Sièges électriques",
"Système Start/Stop",
"Système de navigation",
"Toit ouvrant",
"Toit panoramique",
"USB",
"Verrouillage central",
"Verrouillage centralisé sans clé",
"Vitres électriques",
"Volant multifonction",
"Éclairage LED"
]
},
"location": {
"cityName": "Molenbeek-Saint-Jean",
"countryName": "Belgique",
"countryAbbreviation": "BE",
"postcode": null,
"latitude": null,
"longitude": null,
"isAbroad": false
},
"seller": {
"id": "00000000",
"name": "Private seller",
"type": "CONSUMER",
"pageUrl": "https://www.2ememain.be/u/seller/00000000/",
"phoneNumber": null,
"websiteUrl": null,
"websiteDisplayUrl": null,
"activeYears": 0
},
"inputUrl": "https://www.2ememain.be/v/autos/bmw/m2402550856-a-vendre-bmw-x2-sdrive18i-pack-m-modele-2019"
}

Output fields

Each scraped listing is one dataset record (stored in the ad_details dataset) with the following fields. Fields typed as optional may be null when 2ememain does not provide a value.

Core

FieldDescription
idUnique 2ememain listing ID (e.g. m2411592782).
urlCanonical URL of the ad.
titleListing title.
descriptionFull listing description text (newlines preserved).
categoryId2ememain category ID.
categoryNameHuman-readable category name.
parentCategoryIdParent (L1) category ID.
parentCategoryNameParent (L1) category name.
adTypeAd type (e.g. RegularPaid).
brandListing brand, when available.
imagesArray of full-size image URLs.
thumbnailUrlURL of the thumbnail image.
imageCountNumber of images on the listing.
createdAtFirst publication date/time (ISO 8601).
viewCountNumber of times the ad has been viewed.
favoritedCountNumber of times the ad has been favorited.
isReservedWhether the item is marked as reserved.
isCarAdWhether the listing is a car/vehicle ad.
traitsPromotion traits applied to the ad (e.g. PACKAGE_PREMIUM).
highlightsListing highlights, when present.
inputUrlThe original URL you supplied that produced this record.

Pricing

FieldDescription
pricePrice as a number (in currency).
priceCentsPrice in cents (integer).
priceTypePrice type (e.g. FIXED, MIN_BID, RESERVED).
currencyCurrency code (e.g. EUR).

Location (location)

FieldDescription
cityNameCity name.
countryNameCountry name (e.g. Belgique).
countryAbbreviationCountry code (e.g. BE).
postcodePostal code, when available.
latitude / longitudeGeographic coordinates, when available.
isAbroadWhether the item is located outside Belgium.

Seller (seller)

FieldDescription
idSeller account ID.
nameSeller / shop display name.
typeSeller type (e.g. CONSUMER, professional).
pageUrlURL of the seller's profile page.
phoneNumberSeller phone number, when published.
websiteUrlSeller website URL, when published.
websiteDisplayUrlDisplay form of the seller website.
activeYearsHow many years the seller has been active.

Attributes (attributes)

A flat, category-specific key→value map (Record<string, string | string[]>). Most values are strings; some (such as a car's options) are arrays of strings. The exact keys depend on the listing's category — for cars these include constructionYear, mileage, fuel, transmission, cylinderCapacity, color, and options, among others.

Output formats

Results are stored in an Apify dataset (ad_details). After a run finishes you can download the data as JSON, CSV, Excel, XML, or HTML Table, or pull it via the Apify API. The dataset's overview view surfaces id, title, price, currency, and url.

❓ FAQ

Do I need proxies to scrape 2ememain?

No. The actor is preconfigured to use Apify proxy for optimal performance — you don't need to set anything up.

Do I need to write code?

No. 2ememain Scraper is a no-code tool: paste your URLs, set maxRecords, and run.

Can I scrape a single ad or a whole category?

Both. Provide a search/category URL to collect many listings, or a single ad URL to collect one listing's full record. You can mix search, single-ad, and seller-profile URLs in the same urls list.

Can I scrape every listing from one seller?

Yes. Paste the seller's profile URL — https://www.2ememain.be/u/<slug>/<sellerId>/ — and the scraper collects that seller's active listings, up to maxRecords. This works for both private sellers and professional shops. Each result is a full ad record, identical to single-ad output, with inputUrl set to the profile URL.

How many listings can I scrape?

Use maxRecords to set the cap (default 100). Increase it to collect more results across paginated search and seller pages.

What data can I extract?

Title, description, price, currency, images, location, seller profile, promotion traits, and category-specific attributes (such as mileage, fuel, and transmission for cars). See Output fields.

Scraping publicly available data is generally permitted, but you are responsible for how you use it. Avoid collecting or storing personal data beyond what your use case requires, and comply with applicable laws (including the GDPR) and 2ememain's terms. Consult legal counsel if you're unsure.

What export formats are available?

JSON, CSV, Excel, XML, and HTML Table — plus programmatic access via the Apify API.

Support

For custom or simplified outputs, or to report a bug, contact the developer at support (at) getmediumdata.com or open an issue.