🎯 Trình duyệt đám mây tùy chỉnh, chống phát hiện được hỗ trợ bởi Chromium tự phát triển, thiết kế dành cho trình thu thập dữ liệu webtác nhân AI. 👉Dùng thử ngay
Quay lại blog

Amazon Rufus Scraper: Câu trả lời theo sản phẩm theo ASIN

15-Jul-2026

Tóm tắt:

  • Amazon Rufus, trợ lý mua sắm trong ứng dụng của Amazon, có sẵn thông qua API Scraping Scrapeless dưới dạng scraper.amazon với type: "rufus".
  • Nó hoạt động ở hai chế độ: gửi keywords để có câu trả lời theo danh mục với các sản phẩm được nhóm và xếp hạng — hoặc thêm một asin để hỏi một câu có liên quan đến sản phẩm về một sản phẩm cụ thể.
  • Một POST đến /api/v1/scraper/request trả về câu trả lời tổng hợp, các lựa chọn được nhóm, một mảng products phẳng, và các câu hỏi theo sau mà Rufus gợi ý.
  • Tham số có liên quan đến sản phẩm là asin. Khi nó được thiết lập, Rufus sẽ trả lời về sản phẩm cụ thể đó; nếu không, câu hỏi tương tự sẽ nhận được câu trả lời chung "sản phẩm nào?".
  • Bắt đầu miễn phí. Các tài khoản Scrapeless mới bao gồm tín dụng API Scraper miễn phí — đăng ký tại app.scrapeless.com.

Amazon Rufus trả lời các câu hỏi mua sắm bằng ngôn ngữ đơn giản — "tai nghe chống ồn tốt nhất" — và bây giờ nó cũng có thể trả lời các câu hỏi về một sản phẩm cụ thể: "cái này có tốt cho phòng gym không?" API Scraping Scrapeless thu thập cả hai dưới dạng JSON có cấu trúc. Hướng dẫn này cho thấy cách yêu cầu, hai chế độ, hình dạng phản hồi và một tham số — asin — mà làm cho Rufus nhận thức về sản phẩm. Mỗi yêu cầu và trường dưới đây được thu thập từ một lần chạy trực tiếp của tác nhân.

Những gì bạn có thể làm với Rufus Scraper

  • Theo dõi tỉ lệ đề xuất — thu thập các sản phẩm mà Rufus đã đề cập cho một câu hỏi danh mục, trong phần được nhóm nào, và theo thứ tự nào.
  • Trả lời các câu hỏi cụ thể về sản phẩm quy mô lớn — chuyển một ASIN và một câu hỏi để xem cách Rufus mô tả một sản phẩm cho sự phù hợp, trường hợp sử dụng, hoặc so sánh.
  • Giám sát một thương hiệu hoặc đối thủ — xem liệu một sản phẩm có xuất hiện trong các đề xuất của Rufus hay không, và nó được khung như thế nào, theo thời gian.
  • Cung cấp cho các hệ thống phía dưới — chuyển hướng câu trả lời, các lựa chọn được nhóm, và các câu hỏi theo sau vào bảng điều khiển hoặc thông báo dưới dạng JSON sạch.

Hai chế độ: Danh mục và Có nhận thức về sản phẩm

Loại Rufus hoạt động khác nhau tùy thuộc vào việc bạn có bao gồm một asin hay không:

  • Chế độ danh mục (keywords chỉ). Rufus trả về một đề xuất tổng hợp, content_blocks nhóm sản phẩm thành các phần có nhãn, một mảng products phẳng, và một tập hợp các related_questions. Sử dụng điều này để xem những gì Rufus đề xuất cho một truy vấn.
  • Chế độ có nhận thức về sản phẩm (keywords + asin). Rufus khoanh vùng câu hỏi vào sản phẩm cụ thể đó và trả lời về nó trực tiếp. Trong một lần chạy trực tiếp, khi hỏi "Cái này có tốt cho phòng gym và chạy không?" với ASIN cho một cặp tai nghe Sony WH-1000XM6 đã trả về "Không, tai nghe Sony WH-1000XM6 không lý tưởng cho phòng gym và chạy...". Bỏ asin đi và câu hỏi tương tự nhận được câu trả lời chung "bạn đang hỏi về sản phẩm nào?" — ASIN là những gì làm cho câu trả lời cụ thể về sản phẩm.

Điểm cuối và Tham số

Loại Rufus hoạt động trên điểm cuối API Scraping tổng hợp. Xác thực với mã thông báo của bạn trong tiêu đề x-api-token.

  • Điểm cuối: POST https://api.scrapeless.com/api/v1/scraper/request
  • Tác nhân: scraper.amazon
Trường đầu vào Loại Bắt buộc Mô tả
type chuỗi Đặt thành rufus.
keywords chuỗi Câu hỏi hoặc truy vấn mua sắm.
domain chuỗi Cửa hàng Amazon, ví dụ: www.amazon.com.
asin chuỗi không Một ASIN sản phẩm. Khi có mặt, Rufus trả lời về sản phẩm cụ thể đó.

Kết quả được trả về đồng bộ trong một đối tượng result.

Yêu cầu đã xác thực

Chế độ danh mục (minh họa — thay thế mã thông báo):

bash Copy
curl 'https://api.scrapeless.com/api/v1/scraper/request' \
  --header 'Content-Type: application/json' \
  --header 'x-api-token: YOUR_API_TOKEN' \
  --data '{
    "actor": "scraper.amazon",
    "input": {
      "type": "rufus",
      "keywords": "tai nghe chống ồn tốt nhất",
      "domain": "www.amazon.com"
    }
  }'

Chế độ có nhận thức về sản phẩm thêm một asin:

bash Copy
curl 'https://api.scrapeless.com/api/v1/scraper/request' \
  --header 'Content-Type: application/json' \
  --header 'x-api-token: YOUR_API_TOKEN' \
  --data '{
    "actor": "scraper.amazon",
    "input": {
      "type": "rufus",
      "keywords": "Cái này có tốt cho phòng gym và chạy không?",
      "domain": "www.amazon.com",
      "asin": "B0GN4CFF6H"
    }
  }'

Tích hợp Python

Ví dụ này đọc mã thông báo từ biến môi trường SCRAPELESS_API_KEY và chạy một truy vấn Rufus có nhận thức về sản phẩm. Nó chỉ sử dụng thư viện chuẩn của Python.

python Copy
import json
import os
import urllib.request

API_URL = "https://api.scrapeless.com/api/v1/scraper/request"
API_TOKEN = os.environ["SCRAPELESS_API_KEY"]

payload = {
    "actor": "scraper.amazon",
    "input": {
        "type": "rufus",
        "keywords": "Cái này có tốt cho phòng gym và chạy không?",

" miền": "www.amazon.com",
"asin": "B0GN4CFF6H",
},
}

yêu cầu = urllib.request.Request(
API_URL,
data=json.dumps(payload).encode("utf-8"),
headers={"Content-Type": "application/json", "x-api-token": API_TOKEN},
method="POST",
)

với urllib.request.urlopen(yêu cầu, timeout=180) như phản hồi:
data = json.loads(response.read().decode("utf-8"))

kết quả = data.get("result", {})
print("truy vấn:", result.get("user_query"))
print("trả lời:", (result.get("inference_text") or "")[:200])

Copy
## Những gì bạn nhận được

Chế độ danh mục trả về payload phong phú nhất. Các trường bên dưới là những trường bạn sẽ sử dụng nhiều nhất; giá trị là một mẫu minh họa từ một lần chạy trực tiếp, được rút gọn cho độ dài.

```json
// Mẫu minh họa từ một lần chạy scraper.amazon (kiểu rufus) trực tiếp - tên trường là có thật, giá trị đã được rút gọn.
{
  "metadata": { "type": "rufus" },
  "result": {
    "user_query": "tai nghe chống ồn tốt nhất",
    "inference_text": "Dưới đây là một số tai nghe chống ồn tốt nhất...",
    "content_blocks": [
      { "type": "text" },
      { "type": "product_section", "products": [{ "asin": "B0FDKR293G" }] }
    ],
    "products": [
      {
        "asin": "B0FDKR293G",
        "title": "Tai nghe Bluetooth Bose QuietComfort Ultra (Thế hệ 2)",
        "price": "$369.00",
        "original_price": "$449.00",
        "rating": "4.3",
        "reviews": "2.297",
        "category": "ANC Tốt Nhất",
        "delivery": "Giao hàng MIỄN PHÍ Chủ nhật, 19 tháng 7",
        "image_url": "<đường dẫn hình ảnh sản phẩm>",
        "url": "<đường dẫn sản phẩm amazon>"
      }
    ],
    "related_questions": [
      "Tai nghe earbuds ANC tốt nhất cho tập luyện",
      "So sánh Sony XM5 với Bose QC Ultra"
    ]
  }
}
Trường Kiểu Mô tả
metadata.type chuỗi Kiểu chạy, ví dụ rufus.
result.user_query chuỗi Câu hỏi gửi đến Rufus.
result.inference_text chuỗi Câu trả lời tổng hợp của Rufus.
result.content_blocks mảng Các khối textproduct_section theo thứ tự (nhóm, lựa chọn được xếp hạng).
result.products mảng Danh sách sản phẩm đã được làm phẳng: asin, title, price, original_price, rating, reviews, category, delivery, image_url, url.
result.related_questions mảng Các câu hỏi tiếp theo mà Rufus đề xuất.

Chế độ nhận thức sản phẩm trả về cùng một bao bì, nhưng câu trả lời trong inference_text được định hướng đến ASIN mà bạn đã truyền, và mảng products thường không có vì Rufus đang trả lời về một mục cụ thể thay vì khuyến nghị danh sách.

Vấn đề về hình dạng dữ liệu phổ biến

  • asin là công tắc nhận thức sản phẩm - và phải là asin. Việc truyền product_id hoặc productId sẽ bị lờ đi một cách im lặng; chỉ có asin mới định hướng Rufus đến một sản phẩm cụ thể.
  • Các phản hồi nhận thức danh mục và sản phẩm khác nhau. Một truy vấn danh mục trả về productscontent_blocks; một truy vấn nhận thức sản phẩm trả về inference_text cụ thể cho sản phẩm và thường không có mảng products. Chia nhánh dựa trên cái mà bạn đã gửi.
  • Giá và đánh giá là chuỗi. price, original_price, ratingreviews trở lại dưới dạng chuỗi hiển thị ("$369.00", "2.297"), vì vậy hãy phân tích chúng thay vì chuyển đổi trực tiếp.
  • content_blocks mang theo nhóm. Mảng products đã được làm phẳng mất đi nhãn mục; hãy đọc content_blocks khi bạn cần biết Rufus đã đặt sản phẩm vào mục nào.
  • Các câu trả lời là ảnh chụp theo truy vấn. Phản hồi của Rufus phản ánh một truy vấn tại một thời điểm, không phải là một xuất khẩu danh mục, vì vậy hãy ghi lại theo thời gian để theo dõi sự thay đổi.

Nhân vật đi kèm và Đọc liên quan

Loại Rufus là một chế độ của nhân vật Amazon. Scrapeless xuất bản một kho lưu trữ mẫu Rufus scraper mã nguồn mở với mã có thể chạy trong năm ngôn ngữ. Để tìm hiểu thêm về trợ lý, Amazon giới thiệu Rufus, trợ lý mua sắm tạo sinh của nó, và đưa ra thông tin tổng quát về danh sách lớn hơn trong phòng báo chí bán lẻ của mình. Để biết về một hệ thống phản hồi AI khác, xem Hướng dẫn về API Scraper ChatGPT.

Kết luận

Rufus scraper biến trợ lý mua sắm của Amazon thành JSON có cấu trúc, trong hai chế độ từ một điểm kết thúc: gửi keywords cho một khuyến nghị được nhóm và xếp hạng, hoặc thêm một asin để có câu trả lời nhận thức sản phẩm về một mục cụ thể. Chia nhánh dựa trên chế độ mà bạn đã gửi, phân tích các giá cả và đánh giá dưới dạng chuỗi hiển thị, và đọc content_blocks khi bạn cần nhóm. Đây là một nguồn cấp dữ liệu đáng tin cậy để theo dõi cách Rufus khuyến nghị và mô tả các sản phẩm.
Sẵn sàng để ghi lại câu trả lời của Rufus dưới dạng dữ liệu? Bắt đầu miễn phí từ bảng điều khiển Scrapeless, xem nơi diễn viên này phù hợp trên trang sản phẩm API Scraping, hoặc so sánh các gói trên giá cả Scrapeless.

Câu hỏi thường gặp

H: Scraper Amazon Rufus là gì?
Đ: Đây là diễn viên API Scraping của Scrapeless scraper.amazon với type: "rufus", gửi một câu hỏi tới Amazon Rufus và trả về câu trả lời dưới dạng JSON có cấu trúc - câu trả lời tổng hợp, lựa chọn sản phẩm được nhóm lại, một mảng products đã được phẳng hóa, và các câu hỏi tiếp theo được gợi ý.

H: Làm cách nào để hỏi về một sản phẩm cụ thể?
Đ: Thêm trường asin vào input. Rufus sẽ trả lời về sản phẩm chính xác đó. Nếu không có asin, câu hỏi tương tự sẽ trả về câu trả lời chung "sản phẩm nào?"

H: Nó sử dụng endpoint và tham số nào?
Đ: POST https://api.scrapeless.com/api/v1/scraper/request với actor được đặt là scraper.amazon và một đối tượng input chứa type: "rufus", keywords, domain, và tùy chọn asin. Xác thực với token của bạn trong x-api-token.

H: product_id có hoạt động thay cho asin không?
Đ: Không. Chỉ có asin mới giới hạn Rufus vào một sản phẩm cụ thể; product_idproductId sẽ bị bỏ qua.

H: Làm cách nào để biết phần mà một sản phẩm được nhóm vào?
Đ: Đọc content_blocks. Mảng products đã được phẳng hóa bỏ qua các nhãn phần, trong khi content_blocks giữ lại sự nhóm product_section mà Rufus đã sử dụng.

H: Phản hồi có đồng bộ không?
Đ: Có. Đối tượng result được trả về trong cùng một phản hồi; bạn không phải kiểm tra một endpoint riêng biệt.

Tại Scrapless, chúng tôi chỉ truy cập dữ liệu có sẵn công khai trong khi tuân thủ nghiêm ngặt các luật, quy định và chính sách bảo mật trang web hiện hành. Nội dung trong blog này chỉ nhằm mục đích trình diễn và không liên quan đến bất kỳ hoạt động bất hợp pháp hoặc vi phạm nào. Chúng tôi không đảm bảo và từ chối mọi trách nhiệm đối với việc sử dụng thông tin từ blog này hoặc các liên kết của bên thứ ba. Trước khi tham gia vào bất kỳ hoạt động cạo nào, hãy tham khảo ý kiến ​​cố vấn pháp lý của bạn và xem xét các điều khoản dịch vụ của trang web mục tiêu hoặc có được các quyền cần thiết.

Bài viết phổ biến nhất

Danh mục