Wallapop Seller Scraper: Listings & Reviews
Pricing
from $0.50 / 1,000 listings
Wallapop Seller Scraper: Listings & Reviews
Extract Wallapop sellers’ active listings, profiles, ratings, sales counts, and received reviews. Start with seller IDs, profile URLs, or item URLs. Use the data to compare sellers and monitor their listings.
Pricing
from $0.50 / 1,000 listings
Rating
0.0
(0)
Developer
Epic Scrapers
Maintained by CommunityActor stats
0
Bookmarked
6
Total users
3
Monthly active users
15 days ago
Last modified
Categories
Share
Wallapop Seller Scraper: seller listings, profile stats and reviews to a spreadsheet
Wallapop Seller Scraper turns any Wallapop seller into a spreadsheet. Give it profile URLs, item URLs or seller IDs, and pick what you want: the seller's active listings, the seller's profile statistics (rating, reviews, items sold and bought), or the reviews the seller has received. It is built for resellers checking competitors, sourcing teams vetting sellers, and anyone tracking a shop's inventory and prices over time.
- Three record types, one clean dataset per run. Choose
listings,profilesorreviews. Each run writes one row type, so the output opens straight in Excel or Google Sheets. - Any seller input works. Paste a profile URL, an item URL (the seller of that item is scraped) or the hashed seller ID.
- Optional listing details. Turn on Include listing details to add
views,favorites,conversations, location, categories andmodifiedAtto each listing. - Buyer and seller reviews. Reviews carry
reviewedAs(sellerorbuyer), the rating out of five, the comment and the item. Filter to one side with Review type. - Pay per use, no login. No Wallapop account, cookies or proxy setup. Export to JSON, CSV, Excel or Google Sheets. See the Pricing tab for current rates.
Scope: This Actor works with known sellers. It does not search by keyword and cannot return sold items, because Wallapop only exposes public active listings. To compare prices on other second-hand marketplaces, see Vinted Search Scraper, Kleinanzeigen Scraper or Subito Scraper.
What can you do with Wallapop Seller Scraper?
| Goal | How |
|---|---|
| Monitor a competitor's inventory | Run listings mode on a schedule and compare id, price and scrapedAt between runs. |
| Spot which items get attention | Turn on listing details and sort by views, favorites and conversations. |
| Vet a seller before buying | Run profiles mode and read rating, reviewCount, soldCount, isVerified and registeredAt. |
| Analyze customer feedback | Run reviews mode and read rating, comment and itemTitle. |
| Find professional sellers | Check isPro, isTopProfile, website and openingHours in profiles mode. |
| Map where a seller ships from | Use city, postalCode and countryCode (listing details or profile mode). |
How it compares
| What you need | Wallapop Seller Scraper | Manual copy-paste | Generic page scrapers |
|---|---|---|---|
| Whole seller inventory | Every active listing, 40 per request | Scroll and copy | Often stops or breaks on scroll |
| Views and favorites | Yes, with listing details | Not shown to buyers | Usually missing |
| Reviews with buyer or seller | reviewedAs, rating out of five, comment, item | Page by page | Varies |
| Input | Profile URL, item URL or seller ID | n/a | Usually URLs only |
| Repeat runs | Schedule and compare | Manual | Varies |
The Actor reads the JSON data Wallapop's own app uses. It does not parse web pages for the data itself.
Quick start
- Click Try for free and sign in to Apify.
- Add one or more sellers to Sellers.
- Pick What to scrape. For a first run, set Max results per seller to
10. - Click Start, then open the Output tab and export the data.
Input
{"sellers": ["https://es.wallapop.com/user/luisaldoo-414437744"],"mode": "listings","maxResultsPerSeller": 100,"includeListingDetails": false}
| Field | Type | Default | Effect |
|---|---|---|---|
sellers | Array of strings | Required | Profile URLs, item URLs or seller IDs such as wzyn5l7gdxj5. URLs cost one extra request to find the seller ID. |
mode | String | "listings" | "listings", "profiles" or "reviews". |
maxResultsPerSeller | Integer | 100 | Maximum listings or reviews saved per seller. 0 means no limit. Ignored in profiles mode. |
includeListingDetails | Boolean | false | Listings mode only. One extra request per listing, so runs are slower. |
reviewType | String | "all" | Reviews mode only. "all", "seller" (seller sold the item) or "buyer" (seller bought the item). |
The example profile URL is the input form's prefill. Replace it with your target seller.
Output
Each row has scrapedAt (UTC time the row was created). A listing row without details looks like this. Names, IDs and URLs are illustrative.
{"sellerId": "wzyn5l7gdxj5","sellerName": "Example Seller","sellerUrl": "https://es.wallapop.com/user/example-seller-123456789","id": "1234567890","title": "Used bicycle","description": "City bicycle in good condition.","url": "https://es.wallapop.com/item/used-bicycle-1234567890","price": 120,"currency": "EUR","categoryId": "14000","condition": "Good condition","brand": null,"model": null,"attributes": { "condition": "Good condition" },"thumbnail": null,"images": [],"isReserved": false,"isShippable": true,"sellerAllowsShipping": true,"isRefurbished": false,"hasWarranty": false,"scrapedAt": "2026-01-01T12:00:00.000Z"}
Fields by mode
Listings: id, url, sellerId, sellerName, sellerUrl, title, description, price, currency, categoryId, condition, brand, model, attributes, thumbnail, images, isReserved, isShippable, sellerAllowsShipping, isRefurbished, hasWarranty. With details: views, favorites, conversations, categories, city, postalCode, countryCode, latitude, longitude, isBumped, modifiedAt.
Profiles: id, name, url, webSlug, description, avatarUrl, city, postalCode, countryCode, latitude, longitude, isPro, isVerified, isTopProfile, isFeatured, badge, website, phone, address, openingHours, registeredAt, rating, reviewCount, ratingBreakdown, activeListings, soldCount, purchasesCount.
Reviews: id, sellerId, sellerName, sellerUrl, date, rating, comment, reviewedAs, isShippingTransaction, itemId, itemTitle, itemUrl, itemImage, reviewerId, reviewerName, reviewerUrl.
Notes on values
- Prices keep Wallapop's value and currency. Nothing is converted.
- Detail fields are left out (not zero) when details are off or a detail request fails.
ratingBreakdownmaps star values to percentages, not review counts.soldCountis a profile counter, not a list of sold items.- Profile coordinates are approximate. Contact fields (
website,phone,address) appear only when the seller made them public. - Review ratings are out of five. Reviews of purchases can lack item details.
- Dates are ISO 8601 UTC.
modifiedAtis the last-modified time, not the creation time.
Track Wallapop sellers over time with scheduled runs
Seller inventory, ratings and reviews change every day. Apify can run the actor on a schedule and send the results wherever you need them.
1. Save your input as a task
Open the actor, add your sellers and mode, then click Save as a new task. A task is a saved input you can run again with one click or on a schedule.
2. Schedule the task
In Apify Console, go to Schedules, click Create new, choose how often to run (for example daily at 06:00 in your time zone), and add your task. See Schedules and How to create a schedule.
Watch how to schedule an Actor:
Or schedule a saved task:
Common schedules:
| Use case | Frequency | Cron expression |
|---|---|---|
| New listings from a seller | Daily | 0 6 * * * |
| Price tracking | Twice a day | 0 6,18 * * * |
| Seller profile and rating snapshots | Weekly (Monday) | 0 6 * * 1 |
| New review monitoring | Daily | 0 0 * * * |
3. Send the results to a spreadsheet
Connect Google in the task's Integrations tab to save every run to Google Sheets or Google Drive automatically:
4. Compare runs
Rows have id, sellerId and scrapedAt, so runs are easy to join:
- New listings: listing
ids that appear for the first time, persellerId. - Price changes:
priceper listingid. CompareisReservedtoo. - Delisted items: listing
ids that were in the last run but not in this one. - Profile growth:
rating,reviewCount,activeListingsandsoldCountfrom profile rows, perid. - New reviews: review
ids with theirrating,commentanddate.
FAQ
Can it return sold or private listings?
No. Wallapop only exposes public active listings. A listing missing from a later run does not prove it sold. soldCount in profiles mode is the seller's own counter.
Can it search Wallapop by keyword?
No. This Actor needs a seller. Use a seller ID, profile URL or item URL.
Why did a run return no rows?
The seller may have no active listings, or no reviews for the chosen Review type. Check the mode, the seller and the log.
Can one seller fail while the run succeeds?
Yes. The Actor carries on after a failed seller and succeeds if at least one seller finishes. If none finish, the run fails. Failed detail requests keep the basic listing row.
Do I need a proxy or a login?
No. The Actor uses Apify residential proxies in Spain automatically, and retries failed requests up to four times. It is not an input.
Does it work for Italian and Portuguese sellers?
Yes. Wallapop's es, it and pt pages resolve to the same seller IDs.
Is it legal?
It collects public data. You are responsible for using it under applicable law and Wallapop's terms. Treat personal details such as names and review text with care and follow data protection rules such as GDPR.
Cost
Check the Pricing tab for current rates. maxResultsPerSeller limits output, not spend. Listing details add one request per listing, URL inputs add one request per seller, and review filtering can read more reviews than it saves. Start with a small limit.
Related Actors
- Vinted Search Scraper: second-hand fashion search.
- Kleinanzeigen Scraper: German classifieds.
- Subito Scraper: Italian classifieds.
- eBay Sold Listings API: real sold prices for resale research.
Support
Report problems in the Issues tab. Include the run ID and your input.
This Actor is not affiliated with or endorsed by Wallapop.