CrawlForge
Laman UtamaPlaygroundKes PenggunaanIntegrasiHargaDokumentasiBlog
Cara Menggunakan CrawlForge dengan OpenAI Agents SDK
Tutorials
Kembali ke Blog
Tutorial

Cara Menggunakan CrawlForge dengan OpenAI Agents SDK

C
CrawlForge Team
Pasukan Kejuruteraan
13 April 2026
8 min bacaan
Dikemas kini 14 April 2026

Pada halaman ini

Agents SDK OpenAI menyediakan rangka kerja sedia pengeluaran untuk membina agen AI autonomi dengan penggunaan alat, penyerahan, dan pagar pelindung. CrawlForge menambah kepingan yang hilang: akses web secara langsung. Dengan menyambungkan 26 alat scraping CrawlForge kepada agen OpenAI anda, anda membolehkan mereka search the web, mengekstrak data berstruktur, membaca dokumentasi, dan menjalankan penyelidikan berbilang sumber -- semuanya dalam rangka kerja orkestrasi Agents SDK.

Panduan ini menunjukkan kepada anda cara mentakrifkan alat CrawlForge sebagai fungsi agen OpenAI dan membina agen yang bertindak atas data web masa nyata.

Kandungan

  • Prasyarat
  • Seni Bina: CrawlForge + OpenAI Agents
  • Langkah 1: Cipta Fungsi Alat CrawlForge
  • Langkah 2: Bina Agen Penyelidikan Web
  • Langkah 3: Tambah Pengekstrakan Data Berstruktur
  • Lanjutan: Saluran Paip Web Berbilang Agen
  • Pecahan Kos Credit
  • Amalan Terbaik
  • Langkah Seterusnya

Prasyarat

Bash
pip install openai-agents
# or for the TypeScript/Node.js SDK:
npm install @openai/agents-sdk dotenv
Bash
# .env
OPENAI_API_KEY=sk-xxxxx
CRAWLFORGE_API_KEY=cf_live_xxxxx

Dapatkan API key CrawlForge anda di crawlforge.dev/signup -- 1,000 credits percuma disertakan.

Seni Bina: CrawlForge + OpenAI Agents

Agents SDK OpenAI menggunakan corak tool yang serupa dengan API function calling tetapi dengan orkestrasi yang lebih kaya. Anda mentakrifkan alat sebagai fungsi dengan parameter JSON Schema, dan agen memutuskan bila dan bagaimana untuk memanggilnya.

User Query -> OpenAI Agent -> Tool Selection -> CrawlForge API -> Results -> Agent Response

REST API CrawlForge di https://crawlforge.dev/api/v1/tools/ memetakan dengan kemas kepada format takrifan alat Agents SDK. Setiap alat menjadi fungsi yang boleh dipanggil oleh agen.

Langkah 1: Cipta Fungsi Alat CrawlForge

Pertama, cipta klien CrawlForge yang boleh digunakan semula dan takrifan alat:

Typescript
// lib/crawlforge-tools.ts
import { tool } from '@openai/agents-sdk';
import { z } from 'zod';

const CRAWLFORGE_BASE = 'https://crawlforge.dev/api/v1/tools';

async function callCrawlForge(toolName: string, params: Record<string, unknown>) {
  const response = await fetch(`${CRAWLFORGE_BASE}/${toolName}`, {
    method: 'POST',
    headers: {
      'Authorization': `Bearer ${process.env.CRAWLFORGE_API_KEY}`,
      'Content-Type': 'application/json',
    },
    body: JSON.stringify(params),
  });

  if (!response.ok) {
    throw new Error(`CrawlForge error: ${response.status} ${response.statusText}`);
  }

  return response.json();
}

// Search the web (5 credits)
export const searchWebTool = tool({
  name: 'search_web',
  description: 'Search Google and return top results with titles, URLs, and snippets.',
  parameters: z.object({
    query: z.string().describe('Search query'),
    limit: z.number().default(5).describe('Max results to return'),
  }),
  execute: async ({ query, limit }) => {
    return callCrawlForge('search_web', { query, limit });
  },
});

// Extract page content (2 credits)
export const extractContentTool = tool({
  name: 'extract_content',
  description: 'Extract the main readable content from a web page URL.',
  parameters: z.object({
    url: z.string().url().describe('Full URL to extract content from'),
  }),
  execute: async ({ url }) => {
    return callCrawlForge('extract_content', { url });
  },
});

// Structured scraping (2 credits)
export const scrapeStructuredTool = tool({
  name: 'scrape_structured',
  description: 'Extract structured data from a web page using CSS selectors.',
  parameters: z.object({
    url: z.string().url().describe('URL to scrape'),
    selectors: z.record(z.string()).describe('Map of field names to CSS selectors'),
  }),
  execute: async ({ url, selectors }) => {
    return callCrawlForge('scrape_structured', { url, selectors });
  },
});

// Fetch raw URL (1 credit)
export const fetchUrlTool = tool({
  name: 'fetch_url',
  description: 'Fetch raw HTML content from a URL. Cheapest option for simple retrieval.',
  parameters: z.object({
    url: z.string().url().describe('URL to fetch'),
  }),
  execute: async ({ url }) => {
    return callCrawlForge('fetch_url', { url });
  },
});

Langkah 2: Bina Agen Penyelidikan Web

Cipta agen yang menggunakan alat CrawlForge untuk menyelidik topik:

Typescript
// agents/researcher.ts
import { Agent, run } from '@openai/agents-sdk';
import {
  searchWebTool,
  extractContentTool,
  scrapeStructuredTool,
} from '../lib/crawlforge-tools';

const researchAgent = new Agent({
  name: 'Web Researcher',
  model: 'gpt-4o',
  instructions: `You are a thorough web researcher. When asked about a topic:
1. Search the web for relevant, recent sources
2. Read the top 2-3 results to gather comprehensive information
3. Synthesize findings into a clear, cited summary
4. Always mention the URLs you sourced data from

Use search_web to find sources, then extract_content to read them.
Prefer extract_content over fetch_url when you need readable text.`,
  tools: [searchWebTool, extractContentTool, scrapeStructuredTool],
});

// Run the agent
async function research(topic: string) {
  const result = await run(researchAgent, {
    messages: [{ role: 'user', content: topic }],
  });

  console.log(result.finalOutput);
  return result;
}

// Example usage
await research('What are the latest trends in web scraping regulation in 2026?');

Agen akan secara autonomi:

  1. Memanggil search_web untuk mencari artikel yang relevan (5 credits)
  2. Memanggil extract_content pada keputusan teratas (2 credits setiap satu)
  3. Mensintesis ringkasan bersitasi

Langkah 3: Tambah Pengekstrakan Data Berstruktur

Bina agen pengekstrakan data yang menarik medan tertentu daripada halaman web:

Typescript
// agents/extractor.ts
import { Agent, run } from '@openai/agents-sdk';
import { scrapeStructuredTool, fetchUrlTool } from '../lib/crawlforge-tools';

const extractorAgent = new Agent({
  name: 'Data Extractor',
  model: 'gpt-4o',
  instructions: `You are a data extraction specialist. When given a URL and a data request:
1. Determine the best CSS selectors to extract the requested data
2. Use scrape_structured to pull the data
3. Return the results in clean JSON format

For simple JSON APIs, use fetch_url instead (it costs 1 credit vs 2).`,
  tools: [scrapeStructuredTool, fetchUrlTool],
});

async function extractData(url: string, description: string) {
  const result = await run(extractorAgent, {
    messages: [{
      role: 'user',
      content: `Extract from ${url}: ${description}`,
    }],
  });

  return result.finalOutput;
}

// Extract pricing data
await extractData(
  'https://stripe.com/pricing',
  'All plan names, prices, and key features'
);

Lanjutan: Saluran Paip Web Berbilang Agen

Agents SDK menyokong handoffs antara agen khusus. Bina saluran paip di mana penyelidik mencari sumber dan menyerahkan kepada penganalisis:

Typescript
// agents/pipeline.ts
import { Agent, run } from '@openai/agents-sdk';
import {
  searchWebTool,
  extractContentTool,
  scrapeStructuredTool,
} from '../lib/crawlforge-tools';

const collectorAgent = new Agent({
  name: 'Data Collector',
  model: 'gpt-4o',
  instructions: `You collect raw data from the web. Search for sources,
extract their content, and pass the raw data to the analyst.
Focus on gathering data, not analyzing it.`,
  tools: [searchWebTool, extractContentTool, scrapeStructuredTool],
  handoff_description: 'Collects raw web data for analysis',
});

const analystAgent = new Agent({
  name: 'Data Analyst',
  model: 'gpt-4o',
  instructions: `You analyze data collected by the Data Collector.
Identify patterns, compare data points, and produce actionable insights.
Always structure your output with clear sections and data tables.`,
  tools: [], // No web tools needed -- works with collected data
  handoffs: [collectorAgent], // Can request more data if needed
});

const orchestrator = new Agent({
  name: 'Research Orchestrator',
  model: 'gpt-4o',
  instructions: `You manage research projects. Delegate data collection to
the Data Collector and analysis to the Data Analyst. Ensure the final
output answers the user's question completely.`,
  handoffs: [collectorAgent, analystAgent],
});

// Run the multi-agent pipeline
const result = await run(orchestrator, {
  messages: [{
    role: 'user',
    content: 'Compare the pricing and features of the top 3 web scraping APIs in 2026',
  }],
});

console.log(result.finalOutput);

Saluran paip ini mengasingkan tanggungjawab: pengumpul mengumpul data (menggunakan credits CrawlForge), dan penganalisis memprosesnya (tiada credits diperlukan). Jumlah kos bergantung pada sumber yang diambil -- biasanya 15-25 credits untuk perbandingan 3 sumber.

Pecahan Kos Credit

Aliran Kerja AgenAlat DigunakanAnggaran Credits
Carian tunggal + ringkasansearch_web + extract_content7
Penyelidikan 3 sumbersearch_web + 3x extract_content11
Pengekstrakan berstruktur (1 halaman)scrape_structured2
Perbandingan berbilang agen (3 sumber)search_web + 3x extract_content + scrape_structured15
Laporan penyelidikan mendalamdeep_research10

Free tier CrawlForge (1,000 credits) menyokong kira-kira 90 aliran kerja carian-dan-ekstrak setiap bulan. Plan Professional ($99/month, 50,000 credits) mengendalikan beban kerja agen pengeluaran.

Amalan Terbaik

Pilih alat termurah dahulu. Arahan agen sepatutnya membimbingnya ke arah fetch_url (1 credit) apabila HTML penuh boleh diterima, dan extract_content (2 credits) hanya apabila teks bersih diperlukan. Simpan deep_research (10 credits) untuk pertanyaan berbilang sumber yang kompleks.

Hadkan langkah agen. Tetapkan bilangan maksimum penggunaan alat untuk mengawal kos. Kebanyakan tugas penyelidikan selesai dalam 3-5 panggilan alat.

Gunakan handoffs untuk saluran paip yang kompleks. Daripada satu agen dengan banyak alat, asingkan tanggungjawab. Agen pengumpul mengendalikan akses web (credits), manakala agen penganalisis memproses data (tiada credits).

Caching output alat. Jika agen anda berulang kali mengakses URL yang sama, laksanakan caching respons untuk mengelakkan caj credit berganda.

Pantau penggunaan. Semak penggunaan credit anda dalam dashboard CrawlForge dan tetapkan amaran untuk lonjakan yang tidak dijangka.

Langkah Seterusnya

Anda kini mempunyai agen OpenAI yang boleh mengakses data web secara langsung. Teruskan membina:

  • Gambaran keseluruhan 26 alat CrawlForge -- daftarkan lebih banyak alat untuk agen anda
  • Stealth mode scraping -- akses laman dengan perlindungan anti-bot
  • Automasi deep research -- gunakan alat deep_research 10-credit untuk laporan komprehensif
  • CrawlForge Quick Start -- panduan persediaan MCP penuh

Beri agen OpenAI anda mata pada web. Mula percuma dengan 1,000 credits -- tanpa memerlukan kad kredit.

Cuba sendiri — tiada pendaftaran diperlukan

Jalankan mana-mana daripada 27 alat scraping dan pengekstrakan CrawlForge dalam playground, kemudian mula secara percuma dengan 1,000 credits.

1,000 credits percuma • Isi semula setiap bulan • Tiada kad kredit diperlukan

Tag

openaiagents-sdkintegrationweb-scrapingai-agentstutorialfunction-calling

Tentang Penulis

C

CrawlForge Team

Pasukan Kejuruteraan

Membina MCP server web scraping yang paling menyeluruh. Kami mencipta alatan yang membantu pembangun mengekstrak, menganalisis dan mengubah data web untuk aplikasi AI.

Kekal dikemas kini dengan pandangan terkini

Dapatkan tutorial, kemas kini produk dan petua web scraping terus ke peti masuk anda.

Tiada spam. Berhenti melanggan bila-bila masa.

Praktikkan ini

Uji alat CrawlForge pada mana-mana URL — percuma, tanpa pendaftaran.

Pada halaman ini

Artikel Berkaitan

Cara Menggunakan CrawlForge dengan Agen LangGraph
Tutorials

Cara Menggunakan CrawlForge dengan Agen LangGraph

Bina agen web scraping berkeadaan dengan LangGraph dan CrawlForge. Panduan TypeScript yang merangkumi nod graf, pengurusan keadaan, dan aliran scraping bersyarat.

C
CrawlForge Team
|
24 Apr
|
8m
Cara Menggunakan CrawlForge dengan Ejen AI Mastra
Tutorials

Cara Menggunakan CrawlForge dengan Ejen AI Mastra

Bina ejen AI dengan keupayaan web scraping menggunakan Mastra dan CrawlForge. Panduan persediaan TypeScript dengan integrasi tool, aliran kerja, dan contoh ejen.

C
CrawlForge Team
|
21 Apr
|
7m
Cara Memberi ChatGPT Keupayaan Web Scraping dengan MCP Connectors (2026)
Tutorials

Cara Memberi ChatGPT Keupayaan Web Scraping dengan MCP Connectors (2026)

Sambungkan ChatGPT ke web scraping dengan custom MCP connectors -- mengapa CrawlForge memerlukan wrapper jarak jauh, jambatan FastMCP yang perlu dibina, dan cara menambahnya dalam ChatGPT.

C
CrawlForge Team
|
16 Jun
|
11m

Footer

CrawlForge

Web scraping gred perusahaan untuk Ejen AI. 27 alat MCP khusus yang direka untuk pembangun moden yang membina sistem pintar.

Produk

  • Ciri
  • Playground
  • Harga
  • Kes Penggunaan
  • Integrasi
  • Alternatif
  • Changelog

Sumber

  • Mula Bekerja
  • Rujukan API
  • Templat
  • Panduan
  • Blog
  • Glosari
  • Soalan Lazim
  • Peta Laman

Pembangun

  • Protokol MCP
  • Claude Desktop
  • Cursor IDE
  • LangChain
  • LlamaIndex

Syarikat

  • Tentang
  • Hubungi
  • Privasi
  • Terma
  • Penggunaan Boleh Diterima
  • Cookies

Kekal dikemas kini

Dapatkan kemas kini terkini tentang alat dan ciri baharu.

Dibina dengan Next.js dan protokol MCP

© 2025-2026 CrawlForge. Hak cipta terpelihara.