# Alibaba Image Search Scraper (`piotrv1001/alibaba-image-search-scraper`) Actor

The Alibaba Image Search Scraper finds Alibaba.com products that look like your photo, capturing price ranges, minimum order quantities, sold counts, supplier names, countries, years, verification and ratings \u2014 idealfor product sourcing and supplier discovery.

- **URL**: https://apify.com/piotrv1001/alibaba-image-search-scraper.md
- **Developed by:** [FalconScrape](https://apify.com/piotrv1001) (community)
- **Categories:** E-commerce, Lead generation
- **Stats:** 2 total users, 1 monthly users, 100.0% runs succeeded, 1 bookmarks
- **User rating**: No ratings yet

## Pricing

from $20.00 / 1,000 images

This Actor is paid per event. You are not charged for the Apify platform usage, but only a fixed price for specific events.

Learn more: https://docs.apify.com/actors/running/actors-in-store.md#pay-per-event

## What's an Apify Actor?

An Actor is a serverless cloud program that runs on the Apify platform. It has two run modes.
In Batch mode, an Actor accepts a well-defined JSON input, performs an action which can take anything from a few seconds to a few hours,
and optionally produces a well-defined JSON output, datasets with results, or files in key-value store.
In Standby mode, an Actor provides a web server which can be used as a website, API, or an MCP server.

Apify vocabulary and the platform model are defined once, in the agent quickstart at https://apify.com/agents.md.

## How to integrate an Actor?

If asked about integration, you help developers integrate Actors into their projects.
You adapt to their stack and deliver integrations that are safe, well-documented, and production-ready.

Do not guess an integration path. Every one of them is in the agent quickstart at https://apify.com/agents.md: the Apify MCP server, Agent Skills with the Apify CLI, the JavaScript and Python clients, the REST API, and the account-free path for an agent with no human to sign in. It also carries the rule on stating cost before the first paid run.

For examples already wired to this Actor's own input schema, see the [API](#api) section below.

Each client library has reference documentation the quickstart does not restate: [JavaScript/TypeScript](https://docs.apify.com/api/client/js/docs.md) (`npm install apify-client`) and [Python](https://docs.apify.com/api/client/python/docs.md) (`pip install apify-client`).

# README

### 🚀 Alibaba Image Search Scraper

Find Alibaba.com suppliers from a product photo. The **Alibaba Image Search Scraper** takes one or more image URLs and returns the Alibaba.com products that look like them, with price ranges, minimum order quantities, supplier details, verification and ratings. It's built for product sourcing, supplier discovery and checking what a product costs at the factory.

### ✨ Features

- 📸 **Search by photo**: paste the URL of any product photo (from Amazon, Shopify, Instagram, a competitor's site or your own files as a data: URL) and get visually similar Alibaba.com listings.
- 🏭 **Supplier data on every match**: supplier name, country, years on Alibaba.com, third-party verification (e.g. SGS, Intertek, TÜV), store link and company profile link.
- 💰 **Sourcing numbers**: price range as text and as numbers (min/max), promotion price and discount, minimum order quantity and unit, sold count when shown, and estimated delivery.
- ⭐ **Quality signals**: product review score and count, supplier service score, on-time shipping score, product and supplier certifications.
- 🔎 **Up to 100 matches per photo, and more on request**: above 100, the search continues with the other objects detected in the photo and then with the suggested product categories, 100 at a time. Every row says what it matched on.
- 🧾 **Honest billing**: images that can't be loaded or return no matches get a free error row, so you only pay for searches that found something.

### 🛠️ How It Works

1. **Add image URLs**: one photo per line. JPEG, PNG, WebP, GIF and AVIF up to 10 MB are supported.
2. **Set how many matches you want per image**: 50 by default, 100 in one search, more if needed.
3. **Run the scraper**: each photo is searched separately. Results land in the dataset in similarity order and can be exported to JSON, CSV or Excel, or pulled through the API.

### 💵 Pricing

Pay per event, with no start fee:

| Event              | Price | When it's charged                                                                               |
| ------------------ | ----- | ----------------------------------------------------------------------------------------------- |
| Image search       | $0.02 | Once per image that returns matches. Covers the first set of up to 100 similar products.        |
| Additional results | $0.01 | Per extra set of up to 100 new matches for the same image, only when you ask for more than 100. |

Images that fail or have no matches are free. Example: 200 photos × 50 matches = 10,000 rows for $4.00.

### 📊 Sample Output Data

Each match is one row. Example:

````json
{
    "queryImage": "https://m.media-amazon.com/images/I/61SUj2aKoEL.jpg",
    "rank": 9,
    "matchedBy": "photo",
    "productId": "1601451709122",
    "url": "https://www.alibaba.com/product-detail/AI-Smart-Earbuds-Real-Time-144_1601451709122.html",
    "title": "AI Smart Earbuds Real-Time 144 Language Translation OLED Color Display Instant for Bluetooth Communication for Language Learning",
    "imageUrl": "https://s.alicdn.com/@sc04/kf/H534a6c30f77b4ae1ab8a0daf3312d202w.png_300x300.png",
    "images": [
        "https://s.alicdn.com/@sc04/kf/H534a6c30f77b4ae1ab8a0daf3312d202w.png_300x300.png",
        "https://s.alicdn.com/@sc04/kf/Hf460382a4ce048d99939c8b9abe4f3d1v.jpg_300x300.jpg"
    ],
    "priceText": "$12.99-14.92",
    "priceMin": 12.99,
    "priceMax": 14.92,
    "promotionPriceMin": null,
    "promotionPriceMax": null,
    "discount": null,
    "currency": "USD",
    "minOrderQuantity": 5,
    "minOrderUnit": "pieces",
    "soldCount": 1,
    "estimatedDelivery": null,
    "customizable": false,
    "certifications": [],
    "supplierName": "Shenzhen Kingstar Mould Co., Ltd.",
    "supplierId": "200016787",
    "supplierUrl": "https://kskingstar.en.alibaba.com/",
    "supplierProfileUrl": "https://kskingstar.en.alibaba.com/company_profile.html",
    "supplierCountry": "CN",
    "supplierYears": 19,
    "verifiedBy": "SGS",
    "supplierCertifications": [],
    "reviewScore": 4.5,
    "reviewCount": 53,
    "supplierServiceScore": 4.6,
    "onTimeShippingScore": 4.6,
    "scrapedAt": "2026-09-21T09:25:08.341Z"
}```

`matchedBy` is `photo` for the first 100 matches, `object in photo` for matches on another object detected in the picture, and `category: <name>` for matches within a suggested category. Category matches are broader: the later categories drift further from the original photo.

Images that could not be searched produce a row with `status` (`image_error`, `no_matches` or `failed`) and an `error` message instead of product fields.

### ❓ FAQ

**Do I need an Alibaba.com account?** No. The scraper only uses public search results.

**Which currency are prices in?** US dollars, as shown on Alibaba.com's international site.

**Can I search with a photo from my computer?** Yes. Convert it to a base64 `data:image/jpeg;base64,...` URL and paste it in place of a link.

**Looking for other marketplaces?** Try the AliExpress Image Search Scraper and 1688 Image Search Scraper for the same job on retail and Chinese wholesale catalogs.

Start sourcing from a photo with the **Alibaba Image Search Scraper** today! 🚀
````

# Actor input Schema

## `imageUrls` (type: `array`):

Public URLs of product photos (JPEG, PNG, WebP, GIF or AVIF, up to 10 MB each). A base64 data: URL also works. Each image is searched separately.

## `maxResultsPerImage` (type: `integer`):

How many similar Alibaba.com products to return for each image, most similar first. The first 100 come from the whole photo; above 100 the search continues with other objects detected in the photo and then with the suggested product categories, 100 at a time (later categories get less similar).

## `proxyConfiguration` (type: `object`):

Apify Proxy (automatic) works out of the box.

## Actor input object example

```json
{
  "imageUrls": [
    "https://cbu01.alicdn.com/img/ibank/O1CN01ImHZo51sn2AJ4qBDw_!!2009745810-0-cib.jpg"
  ],
  "maxResultsPerImage": 50,
  "proxyConfiguration": {
    "useApifyProxy": true
  }
}
```

# Actor output Schema

## `matches` (type: `string`):

No description

# API

You can run this Actor programmatically using our API. Below are code examples in JavaScript, Python, and CLI, as well as the OpenAPI specification and MCP server setup.

## JavaScript example

```javascript
import { ApifyClient } from 'apify-client';

// Initialize the ApifyClient with your Apify API token
// Replace the '<YOUR_API_TOKEN>' with your token
const client = new ApifyClient({
    token: '<YOUR_API_TOKEN>',
});

// Prepare Actor input
const input = {
    "imageUrls": [
        "https://cbu01.alicdn.com/img/ibank/O1CN01ImHZo51sn2AJ4qBDw_!!2009745810-0-cib.jpg"
    ],
    "proxyConfiguration": {
        "useApifyProxy": true
    }
};

// Run the Actor and wait for it to finish
const run = await client.actor("piotrv1001/alibaba-image-search-scraper").call(input);

// Fetch and print Actor results from the run's dataset (if any)
console.log('Results from dataset');
console.log(`💾 Check your data here: https://console.apify.com/storage/datasets/${run.defaultDatasetId}`);
const { items } = await client.dataset(run.defaultDatasetId).listItems();
items.forEach((item) => {
    console.dir(item);
});

// 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/js/docs

```

## Python example

```python
from apify_client import ApifyClient

# Initialize the ApifyClient with your Apify API token
# Replace '<YOUR_API_TOKEN>' with your token.
client = ApifyClient("<YOUR_API_TOKEN>")

# Prepare the Actor input
run_input = {
    "imageUrls": ["https://cbu01.alicdn.com/img/ibank/O1CN01ImHZo51sn2AJ4qBDw_!!2009745810-0-cib.jpg"],
    "proxyConfiguration": { "useApifyProxy": True },
}

# Run the Actor and wait for it to finish
run = client.actor("piotrv1001/alibaba-image-search-scraper").call(run_input=run_input)

# Fetch and print Actor results from the run's dataset (if there are any)
print(f"💾 Check your data here: https://console.apify.com/storage/datasets/{run.default_dataset_id}")
for item in client.dataset(run.default_dataset_id).iterate_items():
    print(item)

# 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/python/docs/quick-start

```

## CLI example

```bash
echo '{
  "imageUrls": [
    "https://cbu01.alicdn.com/img/ibank/O1CN01ImHZo51sn2AJ4qBDw_!!2009745810-0-cib.jpg"
  ],
  "proxyConfiguration": {
    "useApifyProxy": true
  }
}' |
apify call piotrv1001/alibaba-image-search-scraper --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "type": "http",
            "url": "https://mcp.apify.com/?tools=fetch-actor-details,piotrv1001/alibaba-image-search-scraper"
        }
    }
}
```

The hosted server signs you in with OAuth on first connect, so no API token belongs in this config. Clients without OAuth support can send an `Authorization: Bearer <APIFY_API_TOKEN>` header instead, using a token from API & Integrations in Apify Console (https://console.apify.com/settings/integrations).

## OpenAPI specification

Download the OpenAPI definition: https://api.apify.com/v2/actors/GEB8HMdALzug64uJV/builds/KuzGtwXp4OPWKhR0M/openapi.json
