Yahoo! Auctions Japan Scraper - Active Listings (ヤフオク)
Pricing
from $3.00 / 1,000 per results
Yahoo! Auctions Japan Scraper - Active Listings (ヤフオク)
Yahoo Auctions Japan scraper for active listings (ヤフオク出品中): keyword search with title, current and buy-it-now price in JPY, bids, end time, condition, category and shipping. English schema, robots.txt-compliant URLs. Item facts only, no seller data. Unofficial; not affiliated with LY Corporation.
Pricing
from $3.00 / 1,000 per results
Rating
0.0
(0)
Developer
JP Open Data
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
3 days ago
Last modified
Categories
Share
Yahoo! Auctions Japan Scraper - Active Listings (ヤフオク出品中)
What is for sale on Yahoo! Auctions Japan (ヤフオク!) right now: title, current price and buy-it-now price in JPY, bid count, end time, condition, category and shipping, in a clean English schema.
This Actor searches the public live search of auctions.yahoo.co.jp for one or more keywords or pasted search URLs (optionally narrowed to one category) and returns each active listing as JSON. Optional filters: price range, condition, buy-it-now only, and ending soon (ends within N hours). Searches with more than the site's 15,000-result limit can be split into price bands for large pulls.
Unofficial tool. Not affiliated with or endorsed by LY Corporation (LINEヤフー株式会社) or Yahoo! Auctions. It reads publicly available pages only (no login), politely (strictly serial requests at least 1.2 s apart, a hard per-run request budget, no block evasion), fetches only URLs the site's robots.txt allows, and extracts item facts only — no seller IDs, names, ratings, store flags or locations. You are responsible for making sure your use of the data complies with the site's terms and applicable law.
Related Actors from the same publisher:
- Sold prices (落札相場): jpopendata/japan-yahoo-auction-sold — what items actually sold for.
- Price comps across marketplaces: jpopendata/japan-resale-price-comps — Yahoo Auctions sold prices plus Yahoo Flea Market, BOOKOFF and Hareruya listings, with min/median/max per keyword.
Quick start — verified input
Copy this into the input (JSON tab) or send it via the API. It was run successfully on 2026-10-04 (10 listings per keyword, 2 requests, about 10 seconds, no proxy). Running with an empty input {} uses exactly these values.
{"keywords": ["ポケモンカード", "Nintendo Switch"],"maxItemsPerKeyword": 10}
Common input mistakes
| Wrong | Right | Why |
|---|---|---|
"keywords": "pokemon cards" | "keywords": ["ポケモンカード"] | Japanese keywords match far more listings; English works for brand and model names (Nikon F3). A single string is accepted too. |
"category": "trading cards" | "category": "2084241343" or empty | Numeric auccat id from a category URL (the URL itself is accepted). |
"priceMin": "1,000円" | "priceMin": 1000 | Whole JPY. Via the API, a string with ¥ or commas is tolerated. |
"condition": "mint" | "condition": "new" | any, new or used (新品 / 未使用 / 中古 also work). |
"maxItemsPerKeyword": 500 with the default budget | also raise "maxApiRequests" | One request returns one page of 50 listings, and the budget is shared by all keywords. |
A pasted URL with s1=end&o1=a to get "ending soonest first" | "endingWithinHours": 6 | The sort parameters are disallowed by robots.txt and are dropped from pasted URLs. The ending-soon filter is the allowed way. |
"keywords" left at the pre-filled list next to "searchUrls" | clear keywords or leave it as is | When URLs are given and keywords still holds the pre-filled Quick start list, only the URLs are searched (the log says so). |
An invalid value stops the run immediately, before any request to the site, with a message that names the field and lists the valid values. Numbers outside their range are clamped with a warning instead.
Empty results?
A keyword with no live listings finishes with 0 items and complete: true. That is not an error (the site itself shows "条件に一致する商品は見つかりませんでした"). Typical causes: very niche or English wording (try the Japanese product name), a category that does not contain the keyword, or narrow price/condition filters with a small request budget. If some keywords stop early, the run still succeeds; the RUN_SUMMARY record in the key-value store shows complete and a stopReason for each keyword.
Who is this for?
- Resellers and proxy-buying services: watch what is listed now, at what current and buy-it-now price, and when each auction ends.
- Collectors: track trading cards, figures, cameras, watches or retro games across many keywords in one run.
- Price research: combine with the sold-price Actor above to compare asking prices with actual sale prices.
Input
| Field | Default | Notes |
|---|---|---|
keywords | ["ポケモンカード", "Nintendo Switch"] | Each keyword is searched separately. Up to 100 keywords + URLs per run. |
searchUrls | empty | Search URLs pasted from your browser, one per line (see below). |
category | empty | Numeric auccat id or category URL. Applies to keywords; a pasted URL keeps its own category. |
priceMin / priceMax | empty | Current price in JPY. Sent to the site as its price filter and re-checked on every listing. |
condition | any | new = the listing shows the 未使用 (unused) badge; used = it does not. Applied after fetching. |
buyItNowOnly | false | Keep only listings with a buy-it-now (即決) price. Applied after fetching. |
endingWithinHours | empty | Keep only listings that end within this many hours (1 to 720). Applied after fetching. |
maxItemsPerKeyword | 10 | Per keyword or URL, 1 to 50,000. |
maxApiRequests | 20 | 1 to 1,000 for the whole run, shared fairly between keywords and URLs. |
proxyConfiguration | no proxy | Apify datacenter IPs are answered directly. If you set a proxy, one sticky session is used for the whole run. |
Paste a search URL
Set up a search on auctions.yahoo.co.jp in your browser (keyword, category, price range, condition), copy the address bar and put it in searchUrls:
{"searchUrls": ["https://auctions.yahoo.co.jp/search/search?p=%E3%82%AC%E3%83%B3%E3%83%97%E3%83%A9&va=%E3%82%AC%E3%83%B3%E3%83%97%E3%83%A9&istatus=1&is_postage_mode=1&dest_pref_code=13&b=1&n=50&s1=end&o1=a&min=1000&max=5000"],"maxItemsPerKeyword": 10}
Accepted: keyword searches (/search/search?... and /search/search/<keyword>/<category>/), category pages (/category/list/.../<id>/) and sold-item searches (their keyword and category are used). The Actor keeps the keyword words (p, va, vo, ve), the category (auccat) and the price range (aucminprice/aucmaxprice, or the site's min/max box, which is sent as aucminprice/aucmaxprice), and turns istatus into the condition filter. Every other parameter is dropped and never sent: sort (s1, o1), page size (n), istatus itself, is_postage_mode and anything else robots.txt disallows, as well as allowed parameters this Actor does not use (such as dest_pref_code or b). The run log lists every dropped parameter, and each record carries the URL in searchUrl. So the results can differ from what your browser shows: the site's default order instead of your sort, and no shipping-destination setting.
A category URL without a keyword is read from the category page itself (/category/list/<id>, only the page offset b is sent): the site redirects keyword-less searches there with a page-size parameter that robots.txt disallows, so the Actor goes to the category page directly. On category pages robots.txt also disallows the price parameters, so a price range on such a URL is applied after fetching, and a keyword-less category cannot be split into price bands (it is limited to the site's 15,000 results). Adding a keyword lifts both limits.
Ending soon
"endingWithinHours": 6 keeps listings whose auction ends in the next 6 hours. robots.txt disallows the site's end-time sort, so the Actor reads results in the site's default order and filters them. For a broad keyword with a short window, give it a larger maxApiRequests.
Large pulls (more than 15,000 listings)
The site shows at most 15,000 results (300 pages) for any one search. When a keyword or URL has more results than that and its share of maxApiRequests is more than 300 requests, the Actor splits the search into current-price bands (using the allowed aucminprice/aucmaxprice parameters) until each band holds 15,000 results or fewer, then reads each band. Example for up to 50,000 listings of one keyword:
{"keywords": ["ポケモンカード"],"maxItemsPerKeyword": 50000,"maxApiRequests": 1000}
This takes time: requests are sent one at a time, at least 1.2 s apart, so 1,000 requests take roughly 30 minutes, and every listing stored is charged. Limits: a single exact price that alone has more than 15,000 listings (for example thousands of ¥1 cards) cannot be split further, so only the first 15,000 at that price are reachable; such a search ends with complete: false and a stopReason in RUN_SUMMARY. Prices move while the run is going, so a listing can change band; duplicates are removed by item id.
Sample output (one dataset item)
{"keyword": "ポケモンカード","searchUrl": null,"itemId": "s1246126423","itemTitle": "ポケモンカードゲーム 拡張パック ストームエメラルダ 14パック メガブレイブ 5パック 計19パックセット","currentPriceJpy": 3000,"buyNowPriceJpy": 4000,"startPriceJpy": 3000,"bidCount": 1,"endsAt": "2026-10-04T23:29:40+09:00","condition": "new","badges": ["未使用"],"categoryId": 2084317604,"categoryIdPath": [25464, 27727, 25826, 2084241343, 2084317604],"isFreeShipping": false,"shippingFeeJpy": 230,"shippingText": "+送料230円","isFleaMarket": false,"isFeatured": false,"imageUrl": "https://auc-pctr.c.yimg.jp/i/auctions.c.yimg.jp/images.auctions.yahoo.co.jp/image/...jpg","itemUrl": "https://auctions.yahoo.co.jp/jp/auction/s1246126423","source": "ヤフオク! 出品中 (auctions.yahoo.co.jp search)","sourceUrl": "https://auctions.yahoo.co.jp/","license": "Publicly available data — unofficial tool; users are responsible for compliance with the source site's terms","retrievedAt": "2026-10-04T04:55:00.000Z"}
keyword is the keyword searched (for a pasted URL, the URL's keyword, or null for a category-only URL). searchUrl is the pasted URL the listing came from, null for keyword searches. buyNowPriceJpy is null when the listing has no buy-it-now price. shippingFeeJpy is 0 for free shipping and null when the site shows no fee or "送料未定". isFeatured marks listings with the site's paid "featured" (注目) option; the site mixes them into the result list on every page, so filter on it if you want organic results only. startPriceJpy is the opening price as the site publishes it (before consumption tax on listings that charge tax).
Honest limits
- Search-page facts only. The Actor reads the search result list and never opens item pages. So there is no item description, no detailed condition grade (only the 未使用 badge), no category names (only ids), and no seller information by design.
- Shipping as shown to an anonymous visitor. The fee is what the site displays without a login; the destination it assumes may not be yours.
- Prices change. Current prices and bid counts are a snapshot at
retrievedAt. - Site order only. robots.txt forbids the sort (
s1,o1) and page-size (n) parameters, so listings come in the site's default order, 50 per request (price bands are read cheapest band first). - Some filters run after fetching. The price range is sent to the site. Condition, buy-it-now and ending-soon filters discard non-matching listings after each page is read, so narrow filters need a larger
maxApiRequests. - 15,000 results per search. Beyond that, only price-band splitting helps (see "Large pulls"), and it needs a large request budget.
- The site can change or refuse requests. If it blocks an IP mid-run, the run keeps what it already has and ends successfully with
complete: false. If it blocks the very first request, the run fails visibly instead of retrying aggressively.
robots.txt compliance
auctions.yahoo.co.jp/robots.txt allows /search/search but disallows these query parameters on it: pstagefree, new, offer, shipping, istatus, abatch, loc_cd, type, mode, n, s1, o1, max_sprice. The rules match any parameter name ending in those letters (so the site's own min= price box is disallowed too). This Actor sends only p, va, vo, ve (keyword words), auccat (category), aucminprice / aucmaxprice (price range — the parameters the site's own price links use, not disallowed on /search/) and b (page offset). Before every request the URL is checked against a copy of the real robots.txt and refused if any rule disallows it; pasted URLs are rebuilt from the allowed parts only. The test suite checks the same rules.
Pricing
Pay per result: you are charged for each listing stored in the dataset. A run stops by itself when it reaches the maximum charge you set for the run.