> ## Documentation Index
> Fetch the complete documentation index at: https://docs.crewai.com/llms.txt
> Use this file to discover all available pages before exploring further.

# أدوات Bright Data

> تكاملات Bright Data للبحث في SERP واستخراج البيانات عبر Web Unlocker وDataset API.

# أدوات Bright Data

هذه المجموعة من الأدوات تدمج خدمات Bright Data لاستخراج البيانات من الويب.

## التثبيت

```shell theme={null}
uv add crewai-tools requests aiohttp
```

## متغيرات البيئة

* `BRIGHT_DATA_API_KEY` (مطلوب)
* `BRIGHT_DATA_ZONE` (لـ SERP/Web Unlocker)

أنشئ بيانات الاعتماد على [https://brightdata.com/](https://brightdata.com/) (سجّل، ثم أنشئ رمز API ومنطقة).
راجع التوثيق: [https://developers.brightdata.com/](https://developers.brightdata.com/)

## الأدوات المضمنة

* `BrightDataSearchTool`: بحث SERP (Google/Bing/Yandex) مع خيارات الموقع الجغرافي واللغة والجهاز.
* `BrightDataWebUnlockerTool`: استخراج الصفحات مع تجاوز مكافحة الروبوتات والتصيير.
* `BrightDataDatasetTool`: تشغيل مهام Dataset API وجلب النتائج.

## أمثلة

### بحث SERP

```python Code theme={null}
from crewai_tools import BrightDataSearchTool

tool = BrightDataSearchTool(
    query="CrewAI",
    country="us",
)

print(tool.run())
```

### Web Unlocker

```python Code theme={null}
from crewai_tools import BrightDataWebUnlockerTool

tool = BrightDataWebUnlockerTool(
    url="https://example.com",
    format="markdown",
)

print(tool.run(url="https://example.com"))
```

### Dataset API

```python Code theme={null}
from crewai_tools import BrightDataDatasetTool

tool = BrightDataDatasetTool(
    dataset_type="ecommerce",
    url="https://example.com/product",
)

print(tool.run())
```

## استكشاف الأخطاء وإصلاحها

* 401/403: تحقق من `BRIGHT_DATA_API_KEY` و `BRIGHT_DATA_ZONE`.
* محتوى فارغ/محظور: فعّل التصيير أو جرّب منطقة مختلفة.

## مثال

```python Code theme={null}
from crewai import Agent, Task, Crew
from crewai_tools import BrightDataSearchTool

tool = BrightDataSearchTool(
    query="CrewAI",
    country="us",
)

agent = Agent(
    role="Web Researcher",
    goal="Search with Bright Data",
    backstory="Finds reliable results",
    tools=[tool],
    verbose=True,
)

task = Task(
    description="Search for CrewAI and summarize top results",
    expected_output="Short summary with links",
    agent=agent,
)

crew = Crew(
    agents=[agent],
    tasks=[task],
    verbose=True,
)

result = crew.kickoff()
```
