Xianyu (Goofish) Listings Scraper
Pricing
from $2.00 / 1,000 product listings
Xianyu (Goofish) Listings Scraper
Xianyu (Goofish) Listings Scraper extracts second-hand product listings from Alibaba's goofish.com — titles, prices, cities, seller info, images, and want counts. Supports anonymous home-feed scraping and authenticated keyword search with optional detail-page enrichment.
Pricing
from $2.00 / 1,000 product listings
Rating
0.0
(0)
Developer
FalconScrape
Actor stats
2
Bookmarked
6
Total users
2
Monthly active users
6 days ago
Last modified
Categories
Share
Xianyu / Goofish Listings Scraper
Extract product listings from Xianyu (闲鱼), Alibaba's C2C second-hand marketplace with tens of millions of active listings across 30+ categories. The Xianyu / Goofish Listings Scraper lets you collect structured listing data for price research, trend monitoring, and resale market analysis — no Taobao account needed for home-feed mode.
✨ Features
- 🏠 No-auth home feed: Scrape the continuously paginated home feed without any login — up to 20,000+ listings per run.
- 🔍 Keyword search (auth mode): Search by keyword with full pagination once you supply a Taobao session cookie.
- 📄 Optional detail enrichment: Visit each item page to collect views, seller rating, sold count, description, and all carousel images.
- 📦 Rich structured output: Title, price (CNY), city, condition, seller info, images, want count, free-shipping and bargain flags, category ID, and timestamps.
- ⚡ Fast & lightweight: Home-feed data is fetched via Alibaba's in-browser MTOP API — no heavy DOM parsing, ~20 items per API call.
🛠️ How It Works
- Choose a mode –
feed(no login) collects the global home feed.search(login required) lets you target specific keywords. - Set a limit – Configure
maxItemsto control how many listings to collect. - Optionally enrich – Enable
fetchDetailsto visit each item's page for additional fields. - Get results – Structured JSON is written to the default dataset, ready to download or connect to downstream tools.
📥 Input
| Field | Type | Default | Description |
|---|---|---|---|
mode | "feed" | "search" | "feed" | Scrape mode. feed requires no login; search requires a valid Taobao session. |
keywords | string[] | [] | Keywords to search for. Used only in search mode. One request is created per keyword. |
maxItems | integer | 100 | Maximum listings to collect. In feed mode this is the total cap; in search mode it applies per keyword. |
fetchDetails | boolean | false | If true, visit each item's detail page to collect views, seller stats, description, and all images. Slower but richer data. |
sessionStateBase64 | string | — | Base64-encoded Playwright storage state (cookies) for an authenticated Taobao/Xianyu session. Required for search mode. Can also be stored under the XIANYU_SESSION key in the Actor's key-value store. |
proxyConfiguration | object | — | Optional proxy settings. Standard datacenter proxies work for feed mode. Mainland China residential proxies are recommended for search mode. |
📊 Sample Output
{"itemId": "956904261043","url": "https://www.goofish.com/item?id=956904261043","title": "进口原装Alpha wire 阿尔法电子线2634BK001","price": 85,"currency": "CNY","city": "上海","condition": "全新","seller": "黑色羽翼","sellerAvatar": "http://img.alicdn.com/...","mainImage": "http://img.alicdn.com/...jpg","images": ["http://img.alicdn.com/...jpg"],"wantCount": 4,"freeShipping": true,"acceptsBargain": true,"categoryId": "50025387","listedAt": "2026-02-13T10:22:37.938Z","scrapedAt": "2026-03-25T18:12:00.000Z"}
With fetchDetails: true, additional fields are included:
{"...": "all fields above, plus:","description": "全新未开封,购于官网,因换工作不再需要,低价出售。","views": 112,"sellerRating": "94%","sellerSoldCount": 131,"sellerSince": "来闲鱼9年","escrowTransaction": true}
🔐 Search Mode & Session Setup
Keyword search requires an authenticated Taobao/Xianyu account (Chinese phone number registration). To generate a session state:
- Open a Playwright browser and navigate to
https://www.goofish.com/. - Scan the QR code popup with the Xianyu mobile app.
- Export the session:
Buffer.from(JSON.stringify(await context.storageState())).toString('base64'). - Paste the result into the
sessionStateBase64input field, or store it under theXIANYU_SESSIONkey in the Actor's default key-value store.
Sessions remain valid for approximately 2–3 days before requiring a refresh.
💰 Pricing
This Actor uses the pay-per-event model — you are only charged for results actually delivered.
| Event | Price | When charged |
|---|---|---|
product-listing | $2.00 / 1,000 results | Each listing scraped in feed or search mode (without fetchDetails) |
item-detail | $6.00 / 1,000 results | Each enriched listing scraped with fetchDetails: true |
Detail pages require an additional browser page load per item, which is reflected in the higher price.