Goofish (闲鱼) Data Scraper
Pricing
from $2.00 / 1,000 results
Go to Apify Store
Goofish (闲鱼) Data Scraper
Collect Goofish marketplace data at scale—from basic search results to enriched products, sellers, and comments.
Goofish (闲鱼) Data Scraper
Pricing
from $2.00 / 1,000 results
Collect Goofish marketplace data at scale—from basic search results to enriched products, sellers, and comments.
item_id
Optional
Stable Goofish item identifier
title
Optional
Listing title
price_text
Optional
Display price (e.g. '¥ 369')
price_value
Optional
Numeric price
price_original
Optional
Original list price (often empty for second-hand)
price_sold
Optional
Sold price (only if status=sold)
shipping_fee
Optional
Shipping cost in CNY
area
Optional
Ship-from city
comment_count
Optional
Number of entries fetched (matches len(comments)). Null when includeComments was not set or the fetch failed.
user_nick
Optional
Seller nickname
pic_url
Optional
First/thumbnail image URL
detail_url
Optional
Canonical Goofish item URL
want_count
Optional
Want count from search tags (cached/approximate)
want_count_official
Optional
Authoritative want count from detail endpoint
want_text
Optional
Original want text (e.g. '1人想要')
view_count
Optional
Total views (browseCnt)
fav_count
Optional
Favorite count (favorCnt)
collect_count
Optional
Collection count (collectCnt)
interact_fav_count
Optional
Interactive favorite count (interactFavorCnt)
sold_count
Optional
Sold count (soldCnt) — often 0 for active listings
quantity
Optional
Stock quantity
badges
Optional
Clean labels extracted from fishTags (e.g. '全新', '百分百好评', 'icon:13')
skus
Optional
SKU / variant property+value pairs (detail only)
price_history
Optional
Embedded price-history events extracted from priceRelativeTags, priceTextTags, and itemDO.soldPrice. With includePriceHistory=true, replaced by the time-series from the mtop price-history endpoint (price_history_source=mtop_endpoint).
price_history_source
Optional
Where price_history came from: 'detail_embedded' (default, derived from tags) or 'mtop_endpoint' (separate endpoint, opt-in via includePriceHistory=true).
category_id
Optional
Leaf category ID
category_path
Optional
Breadcrumb path (detail only)
seller_id
Optional
Base64-encoded seller ID
publish_time_ms
Optional
Listing publish time, unix ms (search emits as a decimal-string; detail fields gmt_create/gmt_create_str are the authoritative timestamps).
publish_time
Optional
ISO 8601 publish time
gmt_create
Optional
Listing creation unix ms (detail only, authoritative)
gmt_create_str
Optional
ISO 8601 creation time
description
Optional
Plain-text description (detail only)
description_rich
Optional
HTML/rich-text description (detail only) — pass-through from itemDO.richTextDesc. summary-level enrichment replaces this with a plain-text collapse.
image_count
Optional
Number of images in gallery
images
Optional
Full image gallery (detail only)
videos
Optional
Defensive best-effort scan of richTextDesc/desc for .mp4|.m3u8|.mov|.m4v|.webm URLs plus and tags. Always present; empty when no inline video is found.
has_video
Optional
Derived from imageInfos[].videoCover, picInfo.hasVideo, or any URL discovered in richTextDesc/desc by the video scanner. Always present; false when no video signal exists in the upstream payload.
b2c_benefit_labels
Optional
Promotion/benefit labels from b2cItemDO.benefitLabels[].text (or content), normalised to list[str]. Always present; empty when upstream has no benefit labels.
b2c_activity_info
Optional
Raw b2cItemDO.activityInfo object when non-empty; absent/null when upstream emits an empty shell.
b2c_want_buy_count
Optional
Extra want-buy count from b2cItemDO.wantBuyCount; distinct from the search-derived want_count and the detail's want_count_official.
countdown
Optional
Raw uiCountDownInfoDO object (sale ends in X days, flash sale timer) when non-empty.
broker
Optional
Raw brokerDO object (broker/agent info) when non-empty.
logistics
Optional
Raw logisticsDO object (shipping logistics) when non-empty.
page_config
Optional
Raw configInfo object (page-level config) when non-empty.
quality_url
Optional
itemDO.qualityUrl — quality-badge image URL when present.
worth_buy_similar_feeds
Optional
itemDO.worthBuySimilarFeeds boolean — flag indicating the item appears in the 'worth-buy similar feeds' carousel.
specifications
Optional
Flat {property_name: value_name} view of skus[] for quick filtering. Always present; empty dict when no skus.
price_history_meta
Optional
Envelope documenting the price-history provenance. As of 2026-07-24 no working mtop time-series endpoint was found (13 candidates returned FAIL_SYS_API_NOT_FOUNDED), so has_time_series=false and endpoint_unavailable=true. source is 'embedded_tags' | 'sold_price' | 'none'.
item_status
Optional
Raw status code (0=active, 1=sold, etc.)
item_status_str
Optional
Human-readable status (e.g. '在售')
seller
Optional
Seller profile + trust signals (detail only)
_comments_status
Optional
Comments fetch status. ok means comments is present (possibly empty). Other v1 values: skipped | rate_limited | transport_error | decode_error | non_success_ret | retry_exhausted | unavailable.
_enriched
Optional
True if detail fetch succeeded (_enrich_status=ok|cache_hit)
_enrich_status
Optional
Detail status. search phase emits 'pending' (or absent in search-only runs); detail phase emits one of: ok | cache_hit | detail_cap_reached | skipped | rate_limited | rate_limited_timeout | transport_error | decode_error | non_success_ret | worker_error | session_refresh_failed | item_unavailable | normalization_error | retry_exhausted | unavailable | deleted.
_phase
Optional
Record phase: search result or detail-enriched result.
_schema_version
Required
Additive record schema version. Always 1 in this release; bumped only when fields are removed or types change.
keyword
Optional
Search keyword that found this item (search-only provenance)
page
Optional
1-based page number (search-only provenance)
comments
Optional
Public listing comments and nested buyer/seller replies (premium enrichment, opt-in via includeComments; capped at 50 entries per listing).