Karim shoair commited on
Commit ·
0907267
1
Parent(s): a2d3f34
fix: improve error handling
Browse files- scrapling/cli.py +6 -5
- scrapling/core/shell.py +4 -1
scrapling/cli.py
CHANGED
|
@@ -55,11 +55,12 @@ def __ParseExtractArguments(
|
|
| 55 |
) -> Tuple[Dict[str, str], Dict[str, str], Dict[str, str], Optional[Dict[str, str]]]:
|
| 56 |
"""Parse arguments for extract command"""
|
| 57 |
parsed_headers, parsed_cookies = _ParseHeaders(headers)
|
| 58 |
-
|
| 59 |
-
|
| 60 |
-
|
| 61 |
-
|
| 62 |
-
|
|
|
|
| 63 |
|
| 64 |
parsed_json = __ParseJSONData(json)
|
| 65 |
parsed_params = {}
|
|
|
|
| 55 |
) -> Tuple[Dict[str, str], Dict[str, str], Dict[str, str], Optional[Dict[str, str]]]:
|
| 56 |
"""Parse arguments for extract command"""
|
| 57 |
parsed_headers, parsed_cookies = _ParseHeaders(headers)
|
| 58 |
+
if cookies:
|
| 59 |
+
for key, value in _CookieParser(cookies):
|
| 60 |
+
try:
|
| 61 |
+
parsed_cookies[key] = value
|
| 62 |
+
except Exception as e:
|
| 63 |
+
raise ValueError(f"Could not parse cookies '{cookies}': {e}")
|
| 64 |
|
| 65 |
parsed_json = __ParseJSONData(json)
|
| 66 |
parsed_params = {}
|
scrapling/core/shell.py
CHANGED
|
@@ -207,11 +207,14 @@ class CurlParser:
|
|
| 207 |
try:
|
| 208 |
parsed_args, unknown = self.parser.parse_known_args(tokens)
|
| 209 |
if unknown:
|
| 210 |
-
|
| 211 |
|
| 212 |
except ValueError:
|
| 213 |
return None
|
| 214 |
|
|
|
|
|
|
|
|
|
|
| 215 |
except Exception as e:
|
| 216 |
log.error(
|
| 217 |
f"An unexpected error occurred during curl arguments parsing: {e}"
|
|
|
|
| 207 |
try:
|
| 208 |
parsed_args, unknown = self.parser.parse_known_args(tokens)
|
| 209 |
if unknown:
|
| 210 |
+
raise AttributeError(f"Unknown/Unsupported curl arguments: {unknown}")
|
| 211 |
|
| 212 |
except ValueError:
|
| 213 |
return None
|
| 214 |
|
| 215 |
+
except AttributeError:
|
| 216 |
+
raise
|
| 217 |
+
|
| 218 |
except Exception as e:
|
| 219 |
log.error(
|
| 220 |
f"An unexpected error occurred during curl arguments parsing: {e}"
|