Amazon Product Scraper
Pricing
$2.50 / 1,000 product results
Amazon Product Scraper
Scrape Amazon keyword searches, category pages, ASINs, and product URLs. Select among 11 marketplace domains; access is route-dependent and challenge pages fail cleanly. Live .com product fields include title, price, rating, review count, seller, availability, images, variants, and BSR.
Pricing
$2.50 / 1,000 product results
Rating
0.0
(0)
Developer
MYM
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
4 hours ago
Last modified
Categories
Share
Amazon Product Scraper: ASIN, Price, Reviews & BSR (No Amazon API, No Login)
Amazon Product Scraper searches Amazon by keyword or category URL and reads product pages from ASINs or product URLs. It returns one structured dataset row per product, with the title, displayed price and currency, rating, rating/review count, seller, availability, image URLs, variants, and Best Sellers Rank when Amazon shows them. Use the dataset in JSON, CSV, Excel, or an API integration without wiring an Amazon Product Advertising API key into your job.
Run a small product lookup first. You pay only for valid product rows saved to the default dataset.
Table of contents
- What it does
- Who uses it
- Product fields
- How to scrape Amazon
- Input examples
- Output example
- Marketplace coverage and accuracy
- Pricing
- Tips for better results
- Want other product or web data?
- MCP and AI agents
- Integrations and API
- FAQ
- Related searches
- Disclaimer
- Resources
- 中文说明
What it does
- Search Amazon products using a keyword, such as
wireless mouse. - Read an Amazon search or category URL you already have.
- Look up products from one or more ASINs.
- Look up products from Amazon product URLs containing
/dp/ASINor/gp/product/ASIN. - Select an Amazon marketplace domain from the input form.
- Leave delivery ZIP and currency blank to use the selected marketplace’s native defaults, or provide a supported postcode and currency preference.
- Confirm the requested delivery country and postcode with Amazon before returning offer data. If Amazon does not confirm the location, the run fails instead of reporting availability for the wrong region.
- Return the actual page currency. If Amazon ignores the currency preference, the affected priced result fails; the Actor never converts or relabels a price.
- Return current page values as seen during that run. Prices include both a numeric value and the displayed price text, so the locale’s currency formatting is not lost.
- Save image links, variant ASINs, and one or more Best Sellers Rank categories when those fields appear on the product page.
- Keep partial results when some products in a batch fail, and explain the failed targets in the run log.
- Fail a zero-result or access-challenge run rather than reporting an empty scrape as successful data.
The Actor does not log into Amazon or accept user-supplied Amazon account cookies, and it does not solve a CAPTCHA. It keeps only a short-lived anonymous request session for the selected delivery location. If Amazon serves an access interstitial, the Actor makes one bounded attempt through an alternate route. If that route still does not return a product page, the run fails and no empty product row is billed.
Who uses it
- Amazon sellers checking a short list of competitor ASINs.
- Product and category researchers comparing visible prices and ratings.
- Ecommerce catalog teams enriching product records with images, sellers, and rank.
- Analysts checking whether a product is in stock before a manual review.
- Developers who need a clean dataset rather than writing and maintaining an HTML parser.
- Agencies preparing small, repeatable product snapshots for a client report.
This Actor is for public product-page information. It is not an Amazon seller-console integration, an order scraper, a buyer-profile scraper, or a review-text crawler.
Product fields
The table distinguishes fields that identify the returned product from values Amazon may omit or vary by locale. A missing field stays null or an empty array; the scraper does not fill it with a guess.
| Field | Type | When it is populated | Description |
|---|---|---|---|
asin | string | Always for a valid product row | Amazon Standard Identification Number. |
url | string | Always | Canonical Amazon product URL for the selected marketplace. |
marketplace | string | Always | Requested marketplace domain, for example com. |
deliveryZipCode | string | Always | Delivery postcode Amazon confirmed for the returned offer. |
title | string | Always for a valid product row | Product title shown on the product page. |
price | number or null | When Amazon shows a price | Numeric value parsed from the current displayed price. |
priceText | string or null | When Amazon shows a price | Displayed price text, preserving the page’s currency and formatting. |
currency | string or null | When a currency is present in the displayed price | Amazon’s actual displayed currency code. A priced row is rejected if it does not match the selected preference; the Actor never converts or relabels the amount. |
rating | number or null | When Amazon shows a rating | Average star rating parsed from the product page. |
reviewsCount | integer or null | When Amazon shows a rating/review count | Count shown next to the customer rating. Amazon may label the underlying count differently by marketplace. |
seller | string or null | When the offer page exposes a seller name | Seller shown in the product’s offer area. This can differ from the brand or manufacturer. |
availability | string or null | When Amazon shows stock text | Availability text such as In Stock. |
imageUrl | string or null | When a primary image is present | Primary high-resolution product image URL exposed by the page. |
images | string array | When image URLs are present | Image URLs exposed in the page’s image selector. |
variants | object array | When a variant selector is present | ASIN and relative product URL pairs found in the variant selector. The current ASIN can appear in this list. |
bsr | object array | When Best Sellers Rank is present | One or more {rank, category} values from Amazon’s product details. |
scrapedAt | ISO date-time | Always | UTC time at which the product row was created. |
Values are snapshots. Prices, ratings, availability, seller offers, images, and rank can change after the run finishes.
How to scrape Amazon
- Open the input form and choose
searchordetailsmode. - Select the marketplace domain that matches your target Amazon URL or ASIN.
- Leave
Delivery ZIP or postcodeandPreferred display currencyblank to use that marketplace’s native defaults, or enter a postcode/currency you want Amazon to use. Returned rows include the confirmed ZIP. - In
searchmode, provide one keyword or one Amazon category/search URL. If you use a category URL, clear the prefilled keyword. - In
detailsmode, provide ASINs, product URLs, or both. Product URLs must use the selected marketplace and contain an ASIN path. - Set
Maximum productsto a small number first. Each result is fetched sequentially, up to the hard cap of 10 products per run. - Start the Actor and open the
Productsview for the main fields,Product detailsfor images and variants, orBest Sellers Rankfor category ranks. - Export the dataset from the Output tab or use the dataset API examples below.
A search run first reads the search/category page and then opens the selected product pages for detailed fields. A details run opens only the requested product pages. Duplicate ASINs are removed before product details are fetched.
Input examples
Search by keyword
{"mode": "search","keyword": "wireless mouse","categoryUrl": "","asins": [],"productUrls": [],"marketplace": "com","maxProducts": 3}
Search by category URL
Use categoryUrl for the category/search page in search mode. Clear the prefilled keyword when using this field.
{"mode": "search","keyword": "","categoryUrl": "https://www.amazon.com/s?k=wireless+mouse","asins": [],"productUrls": [],"marketplace": "com","maxProducts": 3}
Product details by ASIN
{"mode": "details","keyword": "","categoryUrl": "","asins": ["B0CP3HTHLZ", "B004YAVF8I"],"productUrls": [],"marketplace": "com","deliveryZipCode": "","currency": "","maxProducts": 2}
Product details by URL
{"mode": "details","keyword": "","categoryUrl": "","asins": [],"productUrls": ["https://www.amazon.com/dp/B0CP3HTHLZ"],"marketplace": "com","maxProducts": 1}
Input fields
| Property | Type | Description |
|---|---|---|
mode | string | search for a keyword/category page, or details for ASINs/product URLs. |
keyword | string | One search term in search mode. |
categoryUrl | string | One category/search URL in search mode. |
asins | string array | 10-character ASINs in details mode. |
productUrls | string array | Amazon product URLs in details mode. |
marketplace | string | Marketplace domain: com, de, co.uk, com.tr, fr, it, es, ca, com.au, co.jp, or in. |
deliveryZipCode | string, optional | Leave blank for the marketplace default, or provide a postcode matching the selected marketplace. A row is returned only after Amazon confirms the postcode. |
currency | string, optional | Leave blank for the marketplace-native currency, or choose a supported ISO currency. Prices are not converted; mismatched displayed currencies fail validation. |
maxProducts | integer | Maximum detailed product rows, from 1 through 10. |
Invalid ASINs, non-Amazon product URLs, mismatched marketplace hosts, and empty target selections fail validation before a dataset row is written.
Output example
This sample is from a live Amazon.com product page after Amazon confirmed delivery ZIP 10001. Amazon can change offer values between runs.
{"asin": "B0CP3HTHLZ","url": "https://www.amazon.com/dp/B0CP3HTHLZ","marketplace": "com","deliveryZipCode": "10001","title": "TECKNET Wireless Mouse, BT 5.0/2.4G, Rechargeable 6-DPI Silent, Grey","price": 14.39,"priceText": "$14.39","currency": "USD","rating": 4.6,"reviewsCount": 13739,"seller": "electralink","availability": "In Stock","imageUrl": "https://m.media-amazon.com/images/I/61MoSPeCRuL._AC_SL1500_.jpg","images": ["https://m.media-amazon.com/images/I/61MoSPeCRuL._AC_SL1500_.jpg","https://m.media-amazon.com/images/I/61MoSPeCRuL._AC_SY300_SX300_QL70_FMwebp_.jpg","https://m.media-amazon.com/images/I/61MoSPeCRuL._AC_SY355_.jpg","https://m.media-amazon.com/images/I/61MoSPeCRuL._AC_SY450_.jpg","https://m.media-amazon.com/images/I/61MoSPeCRuL._AC_SX425_.jpg","https://m.media-amazon.com/images/I/61MoSPeCRuL._AC_SX466_.jpg","https://m.media-amazon.com/images/I/61MoSPeCRuL._AC_SX522_.jpg","https://m.media-amazon.com/images/I/61MoSPeCRuL._AC_SX569_.jpg","https://m.media-amazon.com/images/I/61MoSPeCRuL._AC_SX679_.jpg"],"variants": [{ "url": "/dp/B0CP3HTHLZ", "asin": "B0CP3HTHLZ" },{ "url": "/dp/B0CP3JRG7F", "asin": "B0CP3JRG7F" },{ "url": "/dp/B0CP3J2SMK", "asin": "B0CP3J2SMK" },{ "url": "/dp/B0D5CNV4KR", "asin": "B0D5CNV4KR" },{ "url": "/dp/B0D5CMCHSH", "asin": "B0D5CMCHSH" },{ "url": "/dp/B0D5CL74ZF", "asin": "B0D5CL74ZF" },{ "url": "/dp/B0D5CNKZCX", "asin": "B0D5CNKZCX" },{ "url": "/dp/B0CP3JVP7T", "asin": "B0CP3JVP7T" },{ "url": "/dp/B0CP3J88Z1", "asin": "B0CP3J88Z1" },{ "url": "/dp/B0D5CMQFPB", "asin": "B0D5CMQFPB" }],"bsr": [{ "rank": 32, "category": "Computer Mice" }],"scrapedAt": "2026-09-29T03:05:24.914Z"}
The example preserves the values from that run. A later run can show a different price, stock message, seller, image list, review count, or rank.
Marketplace coverage and accuracy
The input accepts these marketplace domains: .com, .de, .co.uk, .com.tr, .fr, .it, .es, .ca, .com.au, .co.jp, and .in. The Actor applies a marketplace-native currency and default delivery postcode, and returns a row only after Amazon confirms the requested country/postcode. At this checkpoint, .com with ZIP 10001 is live-tested and returns USD. .de and .co.uk product pages were reachable through an existing US alternate and showed EUR/GBP respectively, but Amazon’s address-change endpoint did not confirm the local postcode on that route; those marketplaces are not claimed as delivery-verified.
When Amazon returns a recognized CAPTCHA or localized access interstitial, the Actor tries one alternate route. It does not solve the challenge, use an Amazon account, replay cookies, or keep switching identities. If the alternate response is still not a product page, the run fails. This behavior avoids a false SUCCEEDED run with zero dataset items.
Field availability depends on the product and the marketplace. A product can be out of stock, have no buy-box seller, show no BSR, or omit variant data. Those values are returned as null or an empty array; the Actor does not infer them from another site. Amazon can also localize currency by delivery region, so verify both priceText and currency before joining the result to a catalog.
Search page order, sponsored listings, Amazon pagination limits, locale formatting, and page markup can change. The Actor caps each run at 10 products and fetches them sequentially. Use a small sample run to confirm the products Amazon returns for your specific query.
Pricing
This Actor uses pay-per-event pricing: $2.50 per valid product row (equivalent to $2.50 per 1,000 rows). There is no Actor-start event. A row is charged when it is saved to the default dataset. A malformed input or a run that returns zero valid products fails without a dataset-item charge. If a batch yields some valid rows and some failed targets, only the saved product rows are charged.
Apify run compute and any platform-level usage charges are separate from the per-result Actor event. The maxProducts limit is visible in the input form so a first run can stay small.
Tips for better results
- Start with one ASIN before submitting a long list.
- Set the marketplace to match the product URL. An ASIN can be unavailable or absent on another country store.
- If using a category URL, clear the prefilled keyword so the target is unambiguous.
- Keep
maxProductslow while validating a new search phrase. Search pages may contain sponsored and organic results. - Compare
priceandpriceText; the numeric value is normalized, while the text preserves the displayed currency formatting. - Check
scrapedAtbefore comparing price snapshots. Amazon values can change between runs. - Treat
seller,availability, and BSR as page observations, not guarantees that an offer can still be purchased later. - A CAPTCHA or interstitial is an access failure, not an empty catalog. Read the run status and logs instead of treating a zero-row run as valid data.
- Use the
Product detailsdataset view to inspect nestedimages,variants, andbsrvalues. - Export a small dataset first, then schedule the input that produced the expected product rows.
Want other product or web data?
There is no second Amazon product Actor in the myagizm catalog at this release checkpoint. For other public data tasks, see the myagizm Apify profile, including:
- Trustpilot Scraper for public company review pages.
- Google Maps Scraper and Google Maps Reviews Scraper for local business listings and reviews.
- Website Content Crawler for pages you are authorized to crawl.
- Google Play Scraper for public app listings and review summaries.
For social and video data, the profile also includes Instagram, TikTok, LinkedIn, Reddit, YouTube, X, and Bilibili Actors. They cover different platforms and are not substitutes for Amazon product-page fields.
MCP and AI agents
You can call this Actor through Apify’s MCP server after the Actor is public and your MCP client is connected to your Apify account. Keep the input small: use one keyword or a few ASINs, ask for the Products view, and inspect the returned scrapedAt, currency, and marketplace before asking an agent to compare prices.
The Actor does not accept arbitrary JavaScript, browser scripts, login cookies, or raw proxy credentials as input. An AI agent should pass only the documented JSON fields.
Integrations and API
Use your Apify API token in the examples below. Replace <ACTOR_ID> and <APIFY_TOKEN> with your own values. Do not publish an API token in a shared notebook, README, or chat.
Run and wait for a result
curl -X POST \"https://api.apify.com/v2/acts/<ACTOR_ID>/run-sync-get-dataset-items?token=<APIFY_TOKEN>" \-H "Content-Type: application/json" \-d '{"mode":"details","keyword":"","categoryUrl":"","asins":["B0CP3HTHLZ"],"productUrls":[],"marketplace":"com","maxProducts":1}'
Start an asynchronous run
curl -X POST \"https://api.apify.com/v2/acts/<ACTOR_ID>/runs?token=<APIFY_TOKEN>" \-H "Content-Type: application/json" \-d '{"mode":"search","keyword":"wireless mouse","categoryUrl":"","asins":[],"productUrls":[],"marketplace":"com","maxProducts":3}'
The response contains a run ID. Poll the Actor run endpoint until it reaches a terminal status, then read the run’s default dataset.
Read dataset items
$curl "https://api.apify.com/v2/datasets/<DATASET_ID>/items?clean=true&format=json&token=<APIFY_TOKEN>"
Use ?view=overview, ?view=details, or ?view=ranking for the table fields prepared for the Apify Output tab.
FAQ
Do I need an Amazon Product Advertising API key?
No. The Actor reads public Amazon product pages and does not call the Product Advertising API. You still need an Apify account and an Apify API token if you use the API.
Do I need to provide an Amazon login or cookie?
No. Do not add account cookies to the input. The Actor does not log into Amazon or reuse a customer session.
Can it search by keyword?
Yes. Choose search, put one term in keyword, and select a marketplace. The Actor reads Amazon search results and fetches product details for up to maxProducts results.
Can it read a category URL?
Yes. In search mode put the Amazon search/category URL in categoryUrl and clear the prefilled keyword. Use an Amazon search or category page on the selected marketplace.
Can I scrape one product by ASIN?
Yes. Choose details and put the 10-character ASIN in asins.
Can I scrape a product URL instead of an ASIN?
Yes. Use productUrls in details mode. The URL must belong to the selected Amazon marketplace and contain /dp/ASIN or /gp/product/ASIN.
Which fields are always returned?
A valid row includes its ASIN, canonical product URL, marketplace, title, and scrape timestamp. Other fields depend on what Amazon exposes on that page.
Why is price null?
Amazon may not display a current offer price for a product, region, or offer state. The Actor leaves the value null rather than copying a list price or inferring a number.
What if Amazon displays a different currency?
The Actor requests the marketplace-native currency by default (for example, USD on .com). If you choose a currency override and Amazon returns a different priced offer, that target fails without a dataset row or item charge; the numeric price is never converted or relabeled.
Does reviewsCount mean the number of written reviews?
It is the count Amazon displays beside its customer rating on that page. Depending on locale and page markup, Amazon may label it as ratings rather than written reviews.
Does the seller field always say Amazon?
No. The product can be sold by a marketplace seller, fulfilled by Amazon, or have no seller text in the captured page. seller reports the seller name when the page exposes one.
Are variants full product records?
No. variants lists ASIN and URL pairs found in the current product’s variant selector. Run those ASINs separately in details mode if you need a full row for every variant.
Is BSR guaranteed?
No. BSR is returned only when Amazon includes a rank on the product page. A missing bsr array means no rank was parsed from that response.
Which marketplaces are verified?
The input accepts 11 marketplace domains. .com with the confirmed 10001 delivery ZIP is live-tested. .de and .co.uk returned localized EUR/GBP product pages on the tested alternate route, but Amazon did not confirm the local delivery postcode; they are not yet delivery-verified.
What happens when Amazon shows a CAPTCHA?
The Actor detects known CAPTCHA and localized access-interstitial pages and tries one alternate route. It does not solve CAPTCHAs or switch Amazon accounts. If it still cannot retrieve a product page, the run fails with no empty dataset rows.
Can the Actor return partial results?
Yes. If some products succeed and others fail, valid products are saved and failed targets are reported in the run log. Only saved product rows are charged.
Will an invalid ASIN be returned as an empty product?
No. Invalid ASINs and malformed URLs fail validation before any product row is written.
How many products can I request in one run?
The hard maximum is 10. Requests run sequentially to keep each run bounded and reduce unnecessary page traffic.
Can I schedule price checks?
Yes. Create an Apify task or schedule with the same small input and store each run’s scrapedAt value. This Actor does not promise that prices will remain unchanged between scheduled runs.
Can I get Excel or CSV?
Yes. Use the Apify dataset export controls or dataset API. The JSON dataset remains the source of truth for nested arrays such as images and variants.
Is Amazon affiliated with this Actor?
No. This is an independent tool and is not endorsed by or affiliated with Amazon.
Why did my run fail with no items?
The run may have had invalid input, no product rows on the selected page, an access interstitial, or an upstream failure. A zero-row run is intentionally marked failed instead of appearing successful.
Related searches
Amazon product scraper · Amazon ASIN scraper · Amazon product details by ASIN · Amazon price scraper · Amazon ratings and reviews count scraper · Amazon seller name scraper · Amazon availability scraper · Amazon product image URL scraper · Amazon product variants scraper · Amazon Best Sellers Rank scraper · Amazon category product scraper · Amazon keyword product search · Amazon product URL scraper · Amazon product data to JSON · Amazon product dataset to CSV · Amazon product data to Excel · Amazon marketplace product scraper · Amazon.com product scraper · Amazon.de product scraper · Amazon.co.uk product scraper · Amazon.com.tr product scraper · Amazon price monitoring data · ecommerce catalog enrichment · Amazon competitor research · Amazon product research dataset · public Amazon product page data · Apify Amazon scraper actor · no-login Amazon product lookup · Amazon BSR by ASIN · Amazon product rating count export
Disclaimer
This is an independent Actor. Amazon and related product names are trademarks of their respective owners. The Actor reads page content visible to its current route and does not bypass a login, solve a CAPTCHA, or claim that a public page is unrestricted for every use. You are responsible for checking the laws, contracts, Amazon terms, and data-protection requirements that apply to your use. Do not use the Actor to collect personal account data or to evade access controls.
Resources
- Apify Actor API
- Run an Actor with the API
- Read dataset items
- Apify MCP server
- Apify dataset exports
- Apify schedules
- myagizm Apify profile
Free plan limits
Free Apify plan users may request up to 3 product results per Apify user ID per UTC day. Requested products count even if Amazon returns fewer valid rows. Paid Apify plans are unlimited. At the limit, the Actor exits successfully with a clear note, no new product rows, and no result charge.
免费计划限制
Apify 免费计划用户每个 UTC 日、每个 Apify 用户 ID 最多可请求 3 条商品结果;即使 Amazon 返回的有效行数较少,也按请求数量计数。付费 Apify 套餐不受此限制。达到上限时,Actor 会正常成功退出并显示说明,不新增商品行,也不收取结果费用。
中文说明
Amazon 商品抓取器:ASIN、价格、评价与 Best Sellers Rank(无需 Amazon API、无需登录)
Amazon 商品抓取器可以按关键词或分类页面搜索 Amazon,也可以根据 ASIN 或商品链接读取商品详情。每个有效商品保存为一条结构化数据,包含标题、页面显示的价格与币种、评分、评价/评分数量、卖家、库存状态、图片链接、变体和 Best Sellers Rank(页面提供时)。结果可以在 Apify 数据集导出为 JSON、CSV 或 Excel,无需为这个任务配置 Amazon Product Advertising API 密钥。
先用少量 ASIN 测试。只有有效商品行写入默认数据集后才按结果计费。
目录
- 功能
- 适用人群
- 商品字段
- 如何抓取 Amazon
- 输入示例
- 输出示例
- 站点覆盖与准确性
- 价格
- 提高结果质量的建议
- 更多商品和网站数据
- MCP 与 AI Agent
- 集成和 API
- 常见问题
- 相关搜索
- 免责声明
- 资源
功能
- 按关键词搜索 Amazon 商品,例如
wireless mouse。 - 读取已有的 Amazon 搜索页或分类页 URL。
- 输入一个或多个 ASIN 获取商品详情。
- 输入 Amazon 商品链接获取商品详情,链接需包含
/dp/ASIN或/gp/product/ASIN。 - 在输入表单中选择 Amazon 站点域名。
- 配送邮编和币种留空时使用该站点的默认值,也可以提供匹配站点的邮编和币种偏好。
- 返回报价前先让 Amazon 确认目标国家和邮编;若未确认,运行会失败,不会返回错误地区的库存信息。
- 返回 Amazon 实际显示的币种;若与所选币种偏好不一致,该价格结果会失败,不会换算或重标价格。
- 返回运行时页面上的实际字段。价格同时包含数字值和原始显示文本,保留页面币种格式。
- 页面提供时返回图片链接、变体 ASIN 和一个或多个 Best Sellers Rank 分类。
- 批量任务中保留已成功的商品,并在运行日志中说明失败目标。
- 遇到零结果或访问拦截时将运行标记为失败,不把空数据伪装成成功结果。
Actor 不会登录 Amazon,也不接受用户提供的 Amazon 账户 Cookie,并且不会破解验证码。它仅在单次运行中使用短时匿名请求会话来设置配送地址。如果 Amazon 返回访问拦截页,Actor 会通过一个备用网络路由进行一次有限重试;若仍未获得商品页,则运行失败,不计为空商品行。
适用人群
- 需要检查少量竞品 ASIN 的 Amazon 卖家。
- 对比页面价格、评分和评价数量的商品研究人员。
- 为商品目录补充图片、卖家和排名字段的电商团队。
- 在人工复核前确认商品页面是否展示库存信息的分析师。
- 希望直接拿到结构化数据,而不想维护 HTML 解析代码的开发者。
- 为客户定期制作小批量商品快照的代理机构。
此 Actor 面向公开商品页面字段。它不是 Seller Central 集成、订单抓取器、买家资料抓取器,也不抓取完整评价正文。
商品字段
下表区分每条有效商品都会有的字段,以及 Amazon 页面可能不提供的字段。缺失值会保持为 null 或空数组,不会用猜测值填充。
| 字段 | 类型 | 何时有值 | 说明 |
|---|---|---|---|
asin | string | 有效商品行始终提供 | Amazon Standard Identification Number。 |
url | string | 始终提供 | 所选站点下的标准商品链接。 |
marketplace | string | 始终提供 | 请求的 Amazon 域名,例如 com。 |
deliveryZipCode | string | 始终提供 | Amazon 确认的配送邮编。 |
title | string | 有效商品行始终提供 | 商品页上显示的标题。 |
price | number 或 null | 页面显示价格时 | 从当前显示价格解析出的数字。 |
priceText | string 或 null | 页面显示价格时 | Amazon 页面原样显示的价格文本,保留币种和格式。 |
currency | string 或 null | 显示价格中包含币种时 | Amazon 实际显示的币种。若与所选偏好不符,该价格行会失败;Actor 不转换也不重标价格。 |
rating | number 或 null | 页面显示评分时 | 商品页显示的平均星级。 |
reviewsCount | integer 或 null | 页面显示评分/评价数量时 | 客户评分旁显示的数量。不同站点对该数量的文案可能不同。 |
seller | string 或 null | 页面显示卖家时 | 商品报价区显示的卖家名称,可能与品牌或制造商不同。 |
availability | string 或 null | 页面显示库存信息时 | 例如 In Stock 的页面文案。 |
imageUrl | string 或 null | 页面提供主图时 | 商品主图 URL。 |
images | string array | 页面提供图片链接时 | 商品图片选择器中公开的图片链接。 |
variants | object array | 页面提供变体选择器时 | 从变体选择器解析出的 ASIN 与相对链接;当前 ASIN 也可能在列表中。 |
bsr | object array | 页面提供 Best Sellers Rank 时 | 一个或多个 {rank, category} 排名。 |
scrapedAt | ISO date-time | 始终提供 | 创建该商品数据行的 UTC 时间。 |
这些值是页面快照。运行结束后,价格、评分、库存、卖家报价、图片和排名都可能变化。
如何抓取 Amazon
- 打开输入表单,选择
search或details模式。 - 选择与目标 Amazon 链接或 ASIN 对应的站点域名。
- 在
search模式中填写一个关键词,或一个 Amazon 搜索/分类 URL。使用分类 URL 时,请清空预填关键词。 - 在
details模式中填写 ASIN、商品链接,或两者兼有。商品链接必须属于所选站点并包含 ASIN 路径。 - 先将
Maximum products设为较小值。每次运行最多抓取 10 个商品,并按顺序读取商品页。 - 启动 Actor 后,使用
Products查看主要字段,Product details查看图片和变体,或Best Sellers Rank查看分类排名。 - 在 Output 标签页导出数据集,也可以使用下方的数据集 API 示例。
搜索运行会先读取搜索/分类页,再打开所选商品页补充详情。详情运行只读取输入的商品页。读取详情前会去除重复 ASIN。
输入示例
按关键词搜索
{"mode": "search","keyword": "wireless mouse","categoryUrl": "","asins": [],"productUrls": [],"marketplace": "com","maxProducts": 3}
按分类 URL 搜索
在搜索模式中,使用 categoryUrl 提供 Amazon 搜索/分类页。若表单仍保留预填关键词,请先清空。
{"mode": "search","keyword": "","categoryUrl": "https://www.amazon.com/s?k=wireless+mouse","asins": [],"productUrls": [],"marketplace": "com","maxProducts": 3}
按 ASIN 获取详情
{"mode": "details","keyword": "","categoryUrl": "","asins": ["B0CP3HTHLZ", "B004YAVF8I"],"productUrls": [],"marketplace": "com","deliveryZipCode": "","currency": "","maxProducts": 2}
按商品链接获取详情
{"mode": "details","keyword": "","categoryUrl": "","asins": [],"productUrls": ["https://www.amazon.com/dp/B0CP3HTHLZ"],"marketplace": "com","maxProducts": 1}
输入字段
| 属性 | 类型 | 说明 |
|---|---|---|
mode | string | search 表示关键词/分类页,details 表示 ASIN/商品链接。 |
keyword | string | 搜索模式下的一个关键词。 |
categoryUrl | string | 搜索模式下的一个分类/搜索 URL。 |
asins | string array | 详情模式下的 10 位 ASIN。 |
productUrls | string array | 详情模式下的 Amazon 商品链接。 |
marketplace | string | Amazon 域名:com、de、co.uk、com.tr、fr、it、es、ca、com.au、co.jp 或 in。 |
deliveryZipCode | string,可选 | 留空使用站点默认邮编;自定义值须符合所选站点。只有 Amazon 确认邮编后才返回商品行。 |
currency | string,可选 | 留空使用站点本币,也可选 ISO 币种。Actor 不换算价格;实际显示币种不一致时会失败。 |
maxProducts | integer | 1 到 10 条商品详情记录。 |
无效 ASIN、非 Amazon 商品链接、站点不匹配的 URL 和空目标会在写入数据行之前触发校验失败。
输出示例
以下示例来自 Amazon.com 实时商品页;Amazon 已确认配送邮编 10001。价格和库存等字段可能随时间变化。
{"asin": "B0CP3HTHLZ","url": "https://www.amazon.com/dp/B0CP3HTHLZ","marketplace": "com","deliveryZipCode": "10001","title": "TECKNET Wireless Mouse, BT 5.0/2.4G, Rechargeable 6-DPI Silent, Grey","price": 14.39,"priceText": "$14.39","currency": "USD","rating": 4.6,"reviewsCount": 13739,"seller": "electralink","availability": "In Stock","imageUrl": "https://m.media-amazon.com/images/I/61MoSPeCRuL._AC_SL1500_.jpg","images": ["https://m.media-amazon.com/images/I/61MoSPeCRuL._AC_SL1500_.jpg","https://m.media-amazon.com/images/I/61MoSPeCRuL._AC_SY300_SX300_QL70_FMwebp_.jpg","https://m.media-amazon.com/images/I/61MoSPeCRuL._AC_SY355_.jpg","https://m.media-amazon.com/images/I/61MoSPeCRuL._AC_SY450_.jpg","https://m.media-amazon.com/images/I/61MoSPeCRuL._AC_SX425_.jpg","https://m.media-amazon.com/images/I/61MoSPeCRuL._AC_SX466_.jpg","https://m.media-amazon.com/images/I/61MoSPeCRuL._AC_SX522_.jpg","https://m.media-amazon.com/images/I/61MoSPeCRuL._AC_SX569_.jpg","https://m.media-amazon.com/images/I/61MoSPeCRuL._AC_SX679_.jpg"],"variants": [{ "url": "/dp/B0CP3HTHLZ", "asin": "B0CP3HTHLZ" },{ "url": "/dp/B0CP3JRG7F", "asin": "B0CP3JRG7F" },{ "url": "/dp/B0CP3J2SMK", "asin": "B0CP3J2SMK" },{ "url": "/dp/B0D5CNV4KR", "asin": "B0D5CNV4KR" },{ "url": "/dp/B0D5CMCHSH", "asin": "B0D5CMCHSH" },{ "url": "/dp/B0D5CL74ZF", "asin": "B0D5CL74ZF" },{ "url": "/dp/B0D5CNKZCX", "asin": "B0D5CNKZCX" },{ "url": "/dp/B0CP3JVP7T", "asin": "B0CP3JVP7T" },{ "url": "/dp/B0CP3J88Z1", "asin": "B0CP3J88Z1" },{ "url": "/dp/B0D5CMQFPB", "asin": "B0D5CMQFPB" }],"bsr": [{ "rank": 32, "category": "Computer Mice" }],"scrapedAt": "2026-09-29T03:05:24.914Z"}
该示例保留了那次运行的值。之后运行可能出现不同价格、库存文案、卖家、图片列表、评价数量或排名。
站点覆盖与准确性
输入可以选择以下站点域名:.com、.de、.co.uk、.com.tr、.fr、.it、.es、.ca、.com.au、.co.jp 和 .in。Actor 会使用该站点的本币和默认邮编;只有 Amazon 确认目标国家/邮编后才返回商品行。目前 .com 的 10001 邮编已通过实时测试,返回 USD。通过现有美国备用路线访问 .de 和 .co.uk 时,商品页分别显示 EUR/GBP,但 Amazon 的地址变更接口没有确认当地邮编,因此这两个站点尚未完成配送验证。
若 Amazon 返回已识别的 CAPTCHA 或本地化访问拦截页,Actor 会尝试一次备用路线。它不会破解验证码、使用 Amazon 账户或重放 Cookie,也不会持续切换身份。如果备用响应仍不是商品页,运行将失败。这样可以避免把零行运行伪装成成功结果。
字段取决于具体商品和站点。商品可能缺货、没有 Buy Box 卖家、没有 BSR,或不提供变体数据。此类值保持为 null 或空数组,不会从其他网站推断。Amazon 也可能按配送区域本地化币种;把结果合并到商品目录前,请同时检查 priceText、currency 和 marketplace。
搜索顺序、广告商品、Amazon 分页限制、本地化格式和页面结构都可能变化。每次运行最多读取 10 个商品,顺序抓取商品页。先用小样本确认 Amazon 针对具体关键词返回了哪些商品。
价格
此 Actor 按结果计费:每条有效商品记录 $0.0025,即每 1,000 条 $2.50。没有 Actor 启动费。商品行写入默认数据集时计费。无效输入或零条有效商品的运行会失败,不产生 dataset-item 计费。如果一批输入中部分成功、部分失败,只对已保存的有效商品行计费。
Apify 运行计算资源和平台级用量可能另行计费,不包含在 Actor 的每结果费用中。输入表单明确显示 maxProducts,方便先从小批量开始。
提高结果质量的建议
- 先用一个 ASIN 做测试,再提交较长列表。
- 选择与商品链接一致的 Amazon 站点。某个 ASIN 可能在另一个国家站点不存在或不可售。
- 使用分类 URL 时清空预填关键词,避免目标含糊。
- 新关键词先把
maxProducts设小。搜索结果可能包含广告商品和自然结果。 - 对比
price与priceText:数字字段便于计算,原始文本保留页面币种格式。 - 对比价格快照时检查
scrapedAt。Amazon 页面值可能在两次运行间变化。 - 将
seller、availability和 BSR 视为页面观察值,不是之后仍可购买的保证。 - CAPTCHA 或拦截页代表访问失败,不是空商品目录。检查运行状态和日志,不要把零行运行当成有效数据。
- 在 Apify Output 中使用
Product details视图查看images、variants和bsr。 - 首先导出小数据集,确认结果后再安排定时运行。
更多商品和网站数据
截至当前发布检查点,myagizm 目录没有第二个 Amazon 商品 Actor。其他公开数据任务可查看 myagizm Apify 主页,例如:
- Trustpilot Scraper:公开公司评价页面。
- Google Maps Scraper 和 Google Maps Reviews Scraper:本地商家列表与评价。
- Website Content Crawler:抓取你获准访问的网站页面。
- Google Play Scraper:公开应用列表和评价摘要。
该主页还包括 Instagram、TikTok、LinkedIn、Reddit、YouTube、X 和 Bilibili 数据 Actor。它们面向其他平台,不能替代 Amazon 商品页字段。
MCP 与 AI Agent
Actor 公开且 MCP 客户端已连接 Apify 账户后,可通过 Apify MCP Server 调用。建议使用小输入:一个关键词或少量 ASIN,读取 Products 视图,并在让 Agent 比较价格前检查 scrapedAt、currency 和 marketplace。
Actor 不接受任意 JavaScript、浏览器脚本、登录 Cookie 或原始代理凭据作为输入。AI Agent 只能传递文档列出的 JSON 字段。
集成和 API
下列示例使用你的 Apify API Token。将 <ACTOR_ID> 和 <APIFY_TOKEN> 替换成自己的值。不要把 API Token 放进共享 Notebook、README 或聊天记录。
启动并等待结果
curl -X POST \"https://api.apify.com/v2/acts/<ACTOR_ID>/run-sync-get-dataset-items?token=<APIFY_TOKEN>" \-H "Content-Type: application/json" \-d '{"mode":"details","keyword":"","categoryUrl":"","asins":["B0CP3HTHLZ"],"productUrls":[],"marketplace":"com","maxProducts":1}'
启动异步运行
curl -X POST \"https://api.apify.com/v2/acts/<ACTOR_ID>/runs?token=<APIFY_TOKEN>" \-H "Content-Type: application/json" \-d '{"mode":"search","keyword":"wireless mouse","categoryUrl":"","asins":[],"productUrls":[],"marketplace":"com","maxProducts":3}'
响应会包含 run ID。轮询 Actor run endpoint,直到运行进入终态,再读取其默认数据集。
读取数据集项目
$curl "https://api.apify.com/v2/datasets/<DATASET_ID>/items?clean=true&format=json&token=<APIFY_TOKEN>"
使用 ?view=overview、?view=details 或 ?view=ranking 获取已配置到 Apify Output 表格的字段。
常见问题
需要 Amazon Product Advertising API 密钥吗?
不需要。Actor 读取 Amazon 公开商品页面,不调用 Product Advertising API。使用 API 时仍需要 Apify 账户和 Apify API Token。
需要提供 Amazon 登录或 Cookie 吗?
不需要。不要把账户 Cookie 放进输入。Actor 不登录 Amazon,也不重放客户会话。
可以按关键词搜索吗?
可以。选择 search,在 keyword 填写一个关键词并选择站点。Actor 读取搜索结果,再为最多 maxProducts 个商品读取详情页。
可以输入分类 URL 吗?
可以。在搜索模式中把 Amazon 搜索/分类 URL 放入 categoryUrl,并清空预填关键词。URL 必须属于选择的站点。
可以只按 ASIN 查一个商品吗?
可以。选择 details,将 10 位 ASIN 放入 asins。
可以用商品 URL 而不是 ASIN 吗?
可以。在详情模式中使用 productUrls。URL 必须属于所选站点,并包含 /dp/ASIN 或 /gp/product/ASIN。
哪些字段始终返回?
有效行始终含 ASIN、标准商品 URL、marketplace、title 和抓取时间。其他字段取决于 Amazon 当次页面提供的内容。
为什么 price 是 null?
Amazon 可能未在当前地区、商品状态或报价页面显示价格。Actor 会保留 null,不会复制列表价或推测金额。
如果 Amazon 显示了不同币种怎么办?
默认会请求站点本币,例如 .com 使用 USD。若你覆盖了币种而 Amazon 返回其他币种的有价报价,该目标会失败且不写入/计费;不会换算或重标数字价格。
reviewsCount 是书面评价数量吗?
它是该页面在客户评分旁显示的数量。Amazon 在不同站点可能把底层数量标成评分数,而非已发布评价正文数。
seller 一定是 Amazon 吗?
不是。商品可能由第三方卖家销售、由 Amazon 配送,或者页面没有卖家文本。seller 只返回页面实际展示的卖家名称。
variants 是完整商品记录吗?
不是。variants 是当前商品变体选择器中的 ASIN 和链接。需要每个变体的完整字段时,请在详情模式中再次提交这些 ASIN。
BSR 一定有吗?
不一定。只有 Amazon 商品页包含 Best Sellers Rank 时才返回。bsr 为空表示当前响应没有可解析的排名。
哪些站点已验证?
输入允许选择 11 个站点域名。.com 的 10001 配送邮编已实时测试。通过测试备用路线访问 .de 和 .co.uk 时,商品页分别显示 EUR/GBP,但 Amazon 未确认当地邮编,因此尚未完成配送验证。
Amazon 出现 CAPTCHA 时会怎样?
Actor 会检测已知 CAPTCHA 和本地化拦截页,并尝试一次备用路线。它不会解验证码或切换 Amazon 账户。仍无法读取商品页时,运行失败且不写空数据行。
可以返回部分结果吗?
可以。如果部分商品成功、部分失败,有效商品会保存,失败目标写在运行日志中。只对已保存的商品行计费。
无效 ASIN 会不会返回空商品?
不会。无效 ASIN 和格式错误的 URL 会在写入商品行前校验失败。
一次最多查多少商品?
硬上限为 10。商品页按顺序抓取,避免无必要的请求突发。
可以定时监控价格吗?
可以。创建 Apify Task 或 Schedule,并保留每次运行的 scrapedAt。Actor 不保证两次定时运行之间价格不变。
可以导出 Excel 或 CSV 吗?
可以。使用 Apify 数据集导出或 Dataset API。嵌套的 images 和 variants 仍以 JSON 数据集为准。
Amazon 是否与此 Actor 有关联?
没有。这是独立工具,未获 Amazon 背书,也与 Amazon 无隶属关系。
为什么运行失败且没有项目?
原因可能是输入无效、所选页面没有商品、访问拦截或上游失败。零行运行会明确失败,不会显示成成功抓取。
相关搜索
Amazon 商品抓取器 · Amazon ASIN 抓取 · 按 ASIN 获取 Amazon 商品详情 · Amazon 价格抓取 · Amazon 评分和评价数量 · Amazon 卖家名称 · Amazon 库存状态 · Amazon 商品图片 URL · Amazon 商品变体 · Amazon Best Sellers Rank · Amazon 分类商品抓取 · Amazon 关键词商品搜索 · Amazon 商品链接抓取 · Amazon 商品数据 JSON · Amazon 商品数据 CSV · Amazon 商品数据 Excel · Amazon 多站点商品抓取 · Amazon.com 商品抓取 · Amazon.de 商品抓取 · Amazon.co.uk 商品抓取 · Amazon.com.tr 商品抓取 · Amazon 价格监控数据 · 电商目录补充 · Amazon 竞品研究 · Amazon 商品研究数据集 · Amazon 公开商品页数据 · Apify Amazon Scraper · 无登录 Amazon 商品查询 · 按 ASIN 查 Amazon BSR · Amazon 商品评分导出 · Amazon 商品卖家和库存
免责声明
这是一个独立 Actor。Amazon 及相关商品名称属于其各自权利人。Actor 读取当前网络路线可见的页面内容,不会绕过登录、破解验证码,也不声称所有公开页面都允许任意用途。你有责任检查适用于自己用途的法律、合同、Amazon 条款及数据保护要求。不要用此 Actor 收集个人账户数据或规避访问控制。