CoreClaw
商店
定价
开始免费试用
Kael Odin

数据集合并和去重工具

定价
Try for free
Kael Odin

数据集合并和去重工具

odin-kael/dataset-deduplication-and-merge-tool

数据集去重采集器是一款功能强大的工具,用于合并多个 JSON/JSONL 文件中的数据集并进行数据去重。该工具针对 CafeScraper 平台完成全面优化,附加增强功能,并具备完善的异常处理机制。

免费试用
免费 2,000 条结果

你可以通过 CoreClaw API,在自己的应用中以编程方式调用 Worker。在下方选择你偏好的开发语言。使用 CoreClaw API 前,需要先注册 CoreClaw 账号并获取 API 密钥——在控制台的概览页中即可找到.

package main

import (
    "bytes"
    "encoding/json"
    "fmt"
    "io"
    "net/http"
    "time"
)

// API URL
const API_URL = "https://openapi.coreclaw.com/api/v1/scraper/run"

// Your API KEY
const API_KEY = "<YOUR_API_KEY>"

// Callback URL, The endpoint that will receive the scraping results
const CALLBACK_URL = "https://your-domain.com/callback"

// ScraperRunRequest represents the structure for running a scraper request
type ScraperRunRequest struct {
    ScraperSlug string          `json:"scraper_slug"` // Unique identifier for the scraper
    Version     string          `json:"version"`      // Worker version number
    Input       json.RawMessage `json:"input"`        // Input parameters
    CallbackURL string          `json:"callback_url"` // Callback URL
}

// ScraperRunResponse represents the structure for the scraper run response
type ScraperRunResponse struct {
    Code    int    `json:"code"`    // Error code
    Message string `json:"message"` // Error message
    Data    Data   `json:"data"`    // Response data
}

// Data represents the structure for response data
type Data struct {
    RunSlug string `json:"run_slug"` // Unique identifier for the run record
}

func main() {
    // Build request parameters
    req := ScraperRunRequest{
        ScraperSlug: "01KG2DV66JTCN65ZBTRX3M456E",
        Version: "v1.0.8",
        Input: json.RawMessage(`{
          "system": {
              "proxy_region": "",
              "cpus": 0.125,
              "memory": 512,
              "execute_limit_time_seconds": 1800,
              "max_total_charge": 0,
              "max_total_traffic": 0
          },
          "custom": {
          "runUnits": [
                    {
                              "url": "https://coreclaw.local/__single_run__"
                    }
          ],
          "scenario": "ecommerce-products",
          "fields": [
                    {
                              "string": "productId"
                    },
                    {
                              "string": "sku"
                    }
          ],
          "mergeStrategy": "keep-newest",
          "timestampField": "updatedAt",
          "dataSourceType": "direct-input",
          "inputData": "[{\"productId\": \"P001\", \"sku\": \"SKU-A-BLACK\", \"name\": \"无线蓝牙耳机 Pro\", \"price\": 299.00, \"stock\": 156, \"source\": \"京东旗舰店\", \"updatedAt\": \"2024-01-20T10:30:00\"}, {\"productId\": \"P001\", \"sku\": \"SKU-A-BLACK\", \"name\": \"无线蓝牙耳机 Pro (黑)\", \"price\": 279.00, \"stock\": 200, \"source\": \"天猫旗舰店\", \"updatedAt\": \"2024-01-22T14:20:00\"}, {\"productId\": \"P001\", \"sku\": \"SKU-A-WHITE\", \"name\": \"无线蓝牙耳机 Pro\", \"price\": 299.00, \"stock\": 88, \"source\": \"京东旗舰店\", \"updatedAt\": \"2024-01-20T10:30:00\"}, {\"productId\": \"P002\", \"sku\": \"SKU-B\", \"name\": \"智能手表 Ultra\", \"price\": 1299.00, \"stock\": 45, \"source\": \"官网\", \"updatedAt\": \"2024-01-18T09:00:00\"}]",
          "inputUrls": [
                    {
                              "url": "https://raw.githubusercontent.com/kael-odin/worker-dedup-datasets/main/test/data1.json"
                    }
          ],
          "datasetIds": [],
          "inputFormat": "json",
          "output": "unique-items",
          "generateReport": true,
          "mode": "dedup-after-load",
          "fieldsToLoad": [],
          "nullAsUnique": false,
          "parallelLoads": 10,
          "parallelPushes": 5,
          "batchSize": 5000,
          "appendFileSource": false,
          "verboseLog": false
}
        }`),
        CallbackURL: CALLBACK_URL,
    }

    // Send request
    runSlug, err := runScraper(req, API_KEY)
    if err != nil {
        fmt.Printf("Request failed: %v
", err)
        return
    }

    fmt.Printf("Worker run successful!")
    fmt.Printf("Run record ID: %s
", runSlug)
    fmt.Printf("You can use this ID to query run status and results
")
}

// runScraper executes the scraper
func runScraper(req ScraperRunRequest, apiKey string) (string, error) {
    // Serialize request data
    body, err := json.Marshal(req)
    if err != nil {
        return "", fmt.Errorf("failed to serialize request data: %w", err)
    }

    // Create HTTP request
    client := &http.Client{
        Timeout: 30 * time.Second,
    }

    httpReq, err := http.NewRequest(
        "POST",
        API_URL,
        bytes.NewBuffer(body),
    )
    if err != nil {
        return "", fmt.Errorf("failed to create request: %w", err)
    }

    // Set request headers
    httpReq.Header.Set("api-key", apiKey)
    httpReq.Header.Set("Content-Type", "application/json")

    // Send request
    resp, err := client.Do(httpReq)
    if err != nil {
        return "", fmt.Errorf("failed to send request: %w", err)
    }
    defer resp.Body.Close()

    // Read response
    respBody, err := io.ReadAll(resp.Body)
    if err != nil {
        return "", fmt.Errorf("failed to read response: %w", err)
    }

    // Check response status code
    if resp.StatusCode != http.StatusOK {
        return "", fmt.Errorf("request failed, status code: %d, response: %s", resp.StatusCode, string(respBody))
    }

    // Parse response
    var result ScraperRunResponse
    if err := json.Unmarshal(respBody, &result); err != nil {
        return "", fmt.Errorf("failed to parse response: %w", err)
    }

    // Check error code
    if result.Code != 0 {
        return "", fmt.Errorf("business error: %s (error code: %d)", result.Message, result.Code)
    }

    return result.Data.RunSlug, nil
}

更多资源

API 参考文档
包含所有端点和参数的完整 API 文档

定价

失败结果不计费

用户评分

5.0

开发者

Kael Odin

Worker 数据

15次 累计运行
成功率:86.67%
最后更新时间:2026.04.20

分类

Google

分享

你可能也喜欢

探索商店中更多热门采集工具

查看全部采集工具
谷歌搜索结果(SERP)抓取API

谷歌搜索结果(SERP)抓取API

by CoreClaw

通过关键词请求, 返回结构化的搜索结果摘要,包括最终搜索参数、自然结果、相关搜索以及 People Also Ask 数据。

4.8
590 次运行
低至 $1.2/1,000 结果
Google Sheets 导入导出工具

Google Sheets 导入导出工具

by Kael Odin

一款功能强大的 Google Sheets 数据导入导出工具,专用于实现 Google Sheets 与外部系统的数据同步、备份和集成。支持三种操作模式、两种认证方式、批量处理、数据去重、自动备份等功能。

5.0
2 次运行
低至 $1.2/1,000 结果
Cheerio网页抓取

Cheerio网页抓取

by Kael Odin

一款基于 Cheerio 的高速静态页面爬虫工具,专为静态 HTML 页面设计。使用 Cheerio 进行 HTML 解析,速度比完整浏览器渲染快 10-50 倍。

5.0
3 次运行
低至 $1.2/1,000 结果
Playwright 网页抓取

Playwright 网页抓取

by Kael Odin

一款使用 Playwright 进行完整浏览器渲染的强大跨浏览器网页爬虫工具。支持 Chromium、Firefox 和 WebKit 三大浏览器引擎。完美适用于动态页面、单页应用(SPA)、无限滚动页面以及跨浏览器测试场景。

5.0
4 次运行
低至 $1.2/1,000 结果
查看全部采集工具
CoreClaw

通过开箱即用的 Worker,快速搭建您的数据采集工作流。

邮箱:support@coreclaw.com

资源中心

  • 快速开始
  • API 参考
  • 销售线索
  • 联盟计划

推荐

  • 商店
  • 定价

地址

頂點數創有限公司

香港九龍大角咀通州街111號雲之端1樓9室