# Cheap Zauba Scraper - Indian Customs Import & Export Trade Data (`trev0n/zauba-scraper`) Actor

Extract Indian customs shipment records (import & export) from Zauba.com — HS codes, product descriptions, trading-partner countries, ports, quantities and USD values. Ideal for supply-chain research, sourcing, competitive intelligence and trade analysis.

- **URL**: https://apify.com/trev0n/zauba-scraper.md
- **Developed by:** [Paweł](https://apify.com/trev0n) (community)
- **Categories:** Developer tools, Automation, E-commerce
- **Stats:** 9 total users, 5 monthly users, 100.0% runs succeeded, 0 bookmarks
- **User rating**: No ratings yet

## Pricing

from $8.99 / 1,000 results

This Actor is paid per event. You are not charged for the Apify platform usage, but only a fixed price for specific events.
Since this Actor supports Apify Store discounts, the price gets lower the higher subscription plan you have.

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

## What's an Apify Actor?

Actors are web data automations that power AI and operations. They run on the Apify platform to scrape websites, process data, connect APIs, and automate workflows.
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.
Actors are written with capital "A".

## 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.
The best way to integrate Actors is as follows.

- **AI agents and MCP clients** — the [Apify MCP server](https://docs.apify.com/integrations/mcp.md) at `https://mcp.apify.com` (remote, streamable HTTP, OAuth on first use).
- **Agentic workflows and local Actor development** — [Agent Skills](https://apify.com/.well-known/agent-skills/index.json) with the [Apify CLI](https://docs.apify.com/cli/docs.md): `npm install -g apify-cli`, then `apify login`.
- **JavaScript/TypeScript projects** — the official [JS/TS client](https://docs.apify.com/api/client/js/docs.md): `npm install apify-client`.
- **Python projects** — the official [Python client](https://docs.apify.com/api/client/python/docs.md): `pip install apify-client`.
- **Any other language** — the [REST API](https://docs.apify.com/api/v2.md).

For usage examples, see the [API](#api) section below.

For more details, see Apify documentation as [Markdown index](https://docs.apify.com/llms.txt) and [Markdown full-text](https://docs.apify.com/llms-full.txt).

# README

## 🚢 Zauba Scraper — Indian Customs Import & Export Trade Data

🎯 **Turn India's customs shipment records into a clean, structured dataset — in minutes, not weeks.**

This scraper pulls real import and export shipment records from Zauba.com: HS codes and their descriptions, line-level product descriptions, trading-partner countries, Indian ports, quantities, units, and USD values. Perfect for sourcing, supply-chain mapping, competitive intelligence, and trade research.

### 🚀 What Does It Do?

This scraper automatically collects **structured, ready-to-use Indian customs shipment data** from Zauba.com and hands it to you as a clean table. No manual browsing, no copy-pasting — just set your product and hit Start.

💡 **Two modes of operation:**

1. **🔍 Discovery Mode** — Type a product keyword (e.g. "laptop", "cotton", "rice") and pick import or export. The scraper finds the right Zauba listing and walks through the pages for you.
2. **📋 Direct URL Mode** — Already have specific Zauba listing URLs? Drop them in and the scraper extracts exactly those.

### 👥 Who Is This For?

| 🏢 Use Case                        | 💬 How It Helps                                                                                          |
| ---------------------------------- | -------------------------------------------------------------------------------------------------------- |
| 📦 **Sourcing & Procurement**      | Discover alternative suppliers by country and HS code, and benchmark unit costs across vendors and ports |
| 🕵️ **Competitive Intelligence**    | Monitor competitors' import and export volumes and spot product launches via shipment timing             |
| 📈 **Market Researchers**          | Build trade-flow datasets, track seasonality, and analyse pricing across thousands of shipments          |
| 💼 **Sales & Lead Generation**     | Identify active importers and exporters as outbound leads for territory planning                         |
| 🎓 **Academics & Analysts**        | Power empirical studies and longitudinal trade-trend research with real customs data                     |
| ⚖️ **Compliance & Investigations** | Trace product flows across tariff classifications for due diligence and investigative work               |

### ✨ Features

- 🌐 **Import & Export Coverage** — Scrape shipments flowing into or out of India with a single switch
- 🔢 **HS Code Intelligence** — Every record carries the HS code plus its official tariff description
- 💵 **Full Valuation Data** — Total shipment value, quantity, unit, and a derived price-per-unit
- 🌍 **Trade Partners & Ports** — See the origin/destination country and the Indian port for each shipment
- 📅 **Clean Dates** — Both the original Zauba date and a normalised ISO date for easy sorting
- 🔄 **Deep Pagination** — Pages through the shipment history up to your chosen limit
- 🎛️ **Smart Filters** — Search by product keyword and trade direction, or feed exact URLs
- ⚡ **Fast & Scalable** — Pull anywhere from a handful of records to your chosen maximum per run
- 🧹 **Clean, Consistent Output** — Uniform field names and types across imports and exports
- 📤 **Export Anywhere** — Download results as JSON, CSV, Excel, or push to Google Sheets, Zapier, Make, or your CRM

### 🎛️ Filters & Options

| Option                   | What It Does                                                            |
| ------------------------ | ----------------------------------------------------------------------- |
| 🏷️ **Product / Keyword** | The product to search for on Zauba (e.g. "laptop", "cotton", "steel")   |
| 🔁 **Trade Direction**   | Choose import shipments (into India) or export shipments (out of India) |
| 🔢 **Max Results**       | Control how many shipment records to extract per run                    |
| 🔗 **Direct URLs**       | Optionally provide specific Zauba listing URLs to scrape                |
| 🌐 **Proxy**             | Residential proxy configuration (Apify residential preset, recommended) |

### 📦 What You Get (Output Fields)

Every shipment record includes:

#### Shipment

| Field              | Example                                  |
| ------------------ | ---------------------------------------- |
| date               | `22-Nov-2016`                            |
| dateIso            | `2016-11-22`                             |
| productDescription | `0A61770 FILTER LENOVO 12.5W9 LAPTOP PF` |
| country            | `China`                                  |
| port               | `Banglore Air Cargo`                     |
| tradeType          | `import`                                 |

#### Classification

| Field             | Example        |
| ----------------- | -------------- |
| hsCode            | `39269099`     |
| hsCodeDescription | `Other: Other` |

#### Valuation

| Field           | Example |
| --------------- | ------- |
| unit            | `NOS`   |
| quantity        | `12`    |
| totalValueUsd   | `636`   |
| pricePerUnitUsd | `52.97` |

#### Metadata

| Field     | Example                                                |
| --------- | ------------------------------------------------------ |
| product   | `laptop`                                               |
| url       | `https://www.zauba.com/import-laptop/p-1-hs-code.html` |
| scrapedAt | `2026-06-25T14:39:05.879Z`                             |

### 📊 Example Output

```json
{
    "date": "22-Nov-2016",
    "dateIso": "2016-11-22",
    "hsCode": "84713010",
    "hsCodeDescription": "Portable automatic data processing machines, weighing not more than 10 kg",
    "productDescription": "DW22Y LATITUDE E5470 PORTABLE COMPUTER-NOTEBOOK (LAPTOP)",
    "country": "China",
    "port": "Banglore Air Cargo",
    "unit": "NOS",
    "quantity": 4,
    "totalValueUsd": 3694,
    "pricePerUnitUsd": 923.52,
    "tradeType": "import",
    "product": "laptop",
    "url": "https://www.zauba.com/import-laptop/p-1-hs-code.html",
    "scrapedAt": "2026-06-25T14:39:05.879Z"
}
```

### 📋 Dataset Views

The Apify Console gives you **3 ready-made table views** to quickly browse your results:

| View                     | What It Shows                                                              |
| ------------------------ | -------------------------------------------------------------------------- |
| 📊 **Overview**          | Date, HS code, product, country, port, quantity, value and trade direction |
| 💵 **Trade & Valuation** | HS codes with descriptions, units, quantities and USD values               |
| 📋 **Full Details**      | Every single field — the complete dataset                                  |

### ❓ FAQ

**🤔 Can I scrape both imports and exports?**
Yes — just flip the Trade Direction switch. You can run separate jobs for each, or feed import and export URLs together.

**🤔 How many results can I get?**
Up to your Max Results setting. The scraper pages through the available shipment history for the product up to that limit.

**🤔 What is the HS code in the output?**
It's the Harmonized System tariff code that classifies the product at customs. Each record also includes the official description for that code.

**🤔 Can I export the data?**
Yes — JSON, CSV, Excel, XML, HTML, RSS. You can also push data directly to Google Sheets, Zapier, Make, or any webhook/API endpoint.

**🤔 How often should I run this?**
For fresh data, run daily or weekly. You can schedule automatic runs on Apify with just a few clicks.

**🤔 Why does the first page take about a minute?**
Zauba's anti-bot protection needs a moment to clear on each fresh run. The scraper waits it out automatically on the first page; every page after that loads quickly.

### 🛠️ Need Custom Filters or Features?

**I'm happy to customize this scraper for your specific needs!** 🤝

Whether you need:

- 🎯 Additional filters (filter by HS code, country, port, value range, or date window)
- 📊 Extra data fields or custom output formats
- 🔄 Integration with your CRM, Google Sheets, or database
- ⏰ Scheduled scraping with automatic deduplication
- 🌐 Scraping from other trade-data platforms alongside Zauba

👉 **Don't hesitate to reach out via private message** — I respond quickly and I'm always open to building exactly what you need. No request is too small or too specific!

### ⚖️ Legal & Ethical Use

This scraper collects **only publicly available information** from Zauba.com. It does not access private data or bypass authentication. Please use the data responsibly and in compliance with applicable laws and platform terms of service.

# Actor input Schema

## `product` (type: `string`):

What to search for on Zauba, e.g. "laptop", "cotton", "rice", "steel". The actor builds the Zauba listing URL from this. Ignored if you provide Start URLs below.

## `tradeType` (type: `string`):

Whether to scrape import shipments (goods entering India) or export shipments (goods leaving India). Used together with the product keyword.

## `startUrls` (type: `array`):

Direct Zauba listing URLs to scrape, e.g. https://www.zauba.com/import-laptop/p-1-hs-code.html . When provided, these override the product + trade direction above.

## `maxItems` (type: `integer`):

Stop after collecting this many shipment records across all pages.

## `maxConcurrency` (type: `integer`):

How many listings to process in parallel (each runs its own stealth browser). Pagination within a listing stays sequential. Keep modest.

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

Zauba blocks datacenter IPs at the Cloudflare layer — RESIDENTIAL proxies are required. Indian IPs work most reliably.

## Actor input object example

```json
{
  "product": "laptop",
  "tradeType": "import",
  "maxItems": 20,
  "maxConcurrency": 2,
  "proxyConfiguration": {
    "useApifyProxy": true,
    "apifyProxyGroups": [
      "RESIDENTIAL"
    ],
    "apifyProxyCountry": "IN"
  }
}
```

# Actor output Schema

## `overview` (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 = {
    "product": "laptop",
    "proxyConfiguration": {
        "useApifyProxy": true,
        "apifyProxyGroups": [
            "RESIDENTIAL"
        ],
        "apifyProxyCountry": "IN"
    }
};

// Run the Actor and wait for it to finish
const run = await client.actor("trev0n/zauba-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 = {
    "product": "laptop",
    "proxyConfiguration": {
        "useApifyProxy": True,
        "apifyProxyGroups": ["RESIDENTIAL"],
        "apifyProxyCountry": "IN",
    },
}

# Run the Actor and wait for it to finish
run = client.actor("trev0n/zauba-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 '{
  "product": "laptop",
  "proxyConfiguration": {
    "useApifyProxy": true,
    "apifyProxyGroups": [
      "RESIDENTIAL"
    ],
    "apifyProxyCountry": "IN"
  }
}' |
apify call trev0n/zauba-scraper --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "type": "http",
            "url": "https://mcp.apify.com/?tools=fetch-actor-details,trev0n/zauba-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/rOjywQoDyZxhdGoMV/builds/28Ahpgi6BQFDpy21G/openapi.json
