codekingpro/portable-devtools
114k
1"""Browser tools and toolkit."""2 3from typing import TYPE_CHECKING, Any4 5from langchain_classic._api import create_importer6 7if TYPE_CHECKING:8 from langchain_community.tools import (9 ClickTool,10 CurrentWebPageTool,11 ExtractHyperlinksTool,12 ExtractTextTool,13 GetElementsTool,14 NavigateBackTool,15 NavigateTool,16 )17 18# Create a way to dynamically look up deprecated imports.19# Used to consolidate logic for raising deprecation warnings and20# handling optional imports.21DEPRECATED_LOOKUP = {22 "NavigateTool": "langchain_community.tools",23 "NavigateBackTool": "langchain_community.tools",24 "ExtractTextTool": "langchain_community.tools",25 "ExtractHyperlinksTool": "langchain_community.tools",26 "GetElementsTool": "langchain_community.tools",27 "ClickTool": "langchain_community.tools",28 "CurrentWebPageTool": "langchain_community.tools",29}30 31_import_attribute = create_importer(__package__, deprecated_lookups=DEPRECATED_LOOKUP)32 33 34def __getattr__(name: str) -> Any:35 """Look up attributes dynamically."""36 return _import_attribute(name)37 38 39__all__ = [40 "ClickTool",41 "CurrentWebPageTool",42 "ExtractHyperlinksTool",43 "ExtractTextTool",44 "GetElementsTool",45 "NavigateBackTool",46 "NavigateTool",47]48 