Spaces:
Paused
Paused
| from scrapling.core._types import ( | |
| Any, | |
| Dict, | |
| List, | |
| Tuple, | |
| Sequence, | |
| Callable, | |
| Optional, | |
| SetCookieParam, | |
| SelectorWaitStates, | |
| ) | |
| # Parameter definitions for shell function signatures (defined once at module level) | |
| # Mirrors TypedDict definitions from _types.py but runtime-accessible for IPython introspection | |
| _REQUESTS_PARAMS = { | |
| "params": Optional[Dict | List | Tuple], | |
| "cookies": Any, | |
| "auth": Optional[Tuple[str, str]], | |
| "impersonate": Any, | |
| "http3": Optional[bool], | |
| "stealthy_headers": Optional[bool], | |
| "proxies": Any, | |
| "proxy": Optional[str], | |
| "proxy_auth": Optional[Tuple[str, str]], | |
| "timeout": Optional[int | float], | |
| "headers": Any, | |
| "retries": Optional[int], | |
| "retry_delay": Optional[int], | |
| "follow_redirects": Optional[bool], | |
| "max_redirects": Optional[int], | |
| "verify": Optional[bool], | |
| "cert": Optional[str | Tuple[str, str]], | |
| "selector_config": Optional[Dict], | |
| } | |
| _FETCH_PARAMS = { | |
| "headless": bool, | |
| "disable_resources": bool, | |
| "network_idle": bool, | |
| "load_dom": bool, | |
| "wait_selector": Optional[str], | |
| "wait_selector_state": SelectorWaitStates, | |
| "cookies": Sequence[SetCookieParam], | |
| "google_search": bool, | |
| "wait": int | float, | |
| "timezone_id": str | None, | |
| "page_action": Optional[Callable], | |
| "proxy": Optional[str | Dict[str, str] | Tuple], | |
| "extra_headers": Optional[Dict[str, str]], | |
| "timeout": int | float, | |
| "init_script": Optional[str], | |
| "user_data_dir": str, | |
| "selector_config": Optional[Dict], | |
| "additional_args": Optional[Dict], | |
| "locale": Optional[str], | |
| "real_chrome": bool, | |
| "cdp_url": Optional[str], | |
| "useragent": Optional[str], | |
| "extra_flags": Optional[List[str]], | |
| } | |
| _STEALTHY_FETCH_PARAMS = { | |
| "headless": bool, | |
| "disable_resources": bool, | |
| "network_idle": bool, | |
| "load_dom": bool, | |
| "wait_selector": Optional[str], | |
| "wait_selector_state": SelectorWaitStates, | |
| "cookies": Sequence[SetCookieParam], | |
| "google_search": bool, | |
| "wait": int | float, | |
| "timezone_id": str | None, | |
| "page_action": Optional[Callable], | |
| "proxy": Optional[str | Dict[str, str] | Tuple], | |
| "extra_headers": Optional[Dict[str, str]], | |
| "timeout": int | float, | |
| "init_script": Optional[str], | |
| "user_data_dir": str, | |
| "selector_config": Optional[Dict], | |
| "additional_args": Optional[Dict], | |
| "locale": Optional[str], | |
| "real_chrome": bool, | |
| "cdp_url": Optional[str], | |
| "useragent": Optional[str], | |
| "extra_flags": Optional[List[str]], | |
| "allow_webgl": bool, | |
| "hide_canvas": bool, | |
| "block_webrtc": bool, | |
| "solve_cloudflare": bool, | |
| } | |
| # Mapping of function names to their parameter definitions | |
| Signatures_map = { | |
| "get": _REQUESTS_PARAMS, | |
| "post": {**_REQUESTS_PARAMS, "data": Optional[Dict | str], "json": Optional[Dict | List]}, | |
| "put": {**_REQUESTS_PARAMS, "data": Optional[Dict | str], "json": Optional[Dict | List]}, | |
| "delete": _REQUESTS_PARAMS, | |
| "fetch": _FETCH_PARAMS, | |
| "stealthy_fetch": _STEALTHY_FETCH_PARAMS, | |
| } | |