Spaces:
Sleeping
Sleeping
File size: 689 Bytes
6cbca40 |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 |
# Copyright (c) 2025 Bytedance Ltd. and/or its affiliates
# SPDX-License-Identifier: MIT
from typing import Annotated
from langchain_core.tools import tool
from src.config.crawler.crawler import Crawler
from loguru import logger
@tool
def crawl_tool(
url: Annotated[str, "The url to crawl."],
) -> str:
"""Use this to crawl a url and get a readable content in markdown format."""
try:
crawler = Crawler()
article = crawler.crawl(url)
return {"url": url, "crawled_content": article.to_markdown()[:1000]}
except BaseException as e:
error_msg = f"Failed to crawl. Error: {repr(e)}"
logger.error(error_msg)
return error_msg
|