mirror of
https://github.com/crewAIInc/crewAI.git
synced 2026-05-02 15:52:34 +00:00
Fix pydantic related errors on FirecrawlScrapeWebsiteTool
This commit is contained in:
@@ -1,6 +1,6 @@
|
|||||||
from typing import TYPE_CHECKING, Any, Dict, Optional, Type
|
from typing import TYPE_CHECKING, Any, Dict, Optional, Type
|
||||||
|
|
||||||
from pydantic import BaseModel, Field
|
from pydantic import BaseModel, Field, ConfigDict
|
||||||
|
|
||||||
from crewai_tools.tools.base_tool import BaseTool
|
from crewai_tools.tools.base_tool import BaseTool
|
||||||
|
|
||||||
@@ -24,6 +24,7 @@ class FirecrawlScrapeWebsiteToolSchema(BaseModel):
|
|||||||
|
|
||||||
|
|
||||||
class FirecrawlScrapeWebsiteTool(BaseTool):
|
class FirecrawlScrapeWebsiteTool(BaseTool):
|
||||||
|
model_config = ConfigDict(arbitrary_types_allowed=True)
|
||||||
name: str = "Firecrawl web scrape tool"
|
name: str = "Firecrawl web scrape tool"
|
||||||
description: str = "Scrape webpages url using Firecrawl and return the contents"
|
description: str = "Scrape webpages url using Firecrawl and return the contents"
|
||||||
args_schema: Type[BaseModel] = FirecrawlScrapeWebsiteToolSchema
|
args_schema: Type[BaseModel] = FirecrawlScrapeWebsiteToolSchema
|
||||||
@@ -61,3 +62,11 @@ class FirecrawlScrapeWebsiteTool(BaseTool):
|
|||||||
"timeout": timeout,
|
"timeout": timeout,
|
||||||
}
|
}
|
||||||
return self.firecrawl.scrape_url(url, options)
|
return self.firecrawl.scrape_url(url, options)
|
||||||
|
|
||||||
|
try:
|
||||||
|
from firecrawl import FirecrawlApp
|
||||||
|
FirecrawlScrapeWebsiteTool.model_rebuild()
|
||||||
|
except ImportError:
|
||||||
|
raise ImportError(
|
||||||
|
"`firecrawl` package not found, please run `pip install firecrawl-py`"
|
||||||
|
)
|
||||||
Reference in New Issue
Block a user