Using the new types file

This commit is contained in:
Karim shoair
2024-10-31 01:32:18 +03:00
parent 1ca2b6cfe4
commit 23c4181ff2
4 changed files with 4 additions and 19 deletions
+1 -1
View File
@@ -1,9 +1,9 @@
import re import re
from types import MappingProxyType from types import MappingProxyType
from collections.abc import Mapping from collections.abc import Mapping
from typing import Dict, List, Union, Pattern
from scrapling.utils import _is_iterable, flatten from scrapling.utils import _is_iterable, flatten
from scrapling._types import Dict, List, Union, Pattern
from orjson import loads, dumps from orjson import loads, dumps
from w3lib.html import replace_entities as _replace_entities from w3lib.html import replace_entities as _replace_entities
+1 -6
View File
@@ -1,17 +1,12 @@
import os import os
from difflib import SequenceMatcher from difflib import SequenceMatcher
from typing import Any, Dict, List, Tuple, Optional, Pattern, Union, Callable, Generator
try:
from typing import SupportsIndex
except ImportError:
# 'SupportsIndex' got added in Python 3.8
SupportsIndex = None
from scrapling.translator import HTMLTranslator from scrapling.translator import HTMLTranslator
from scrapling.mixins import SelectorsGeneration from scrapling.mixins import SelectorsGeneration
from scrapling.custom_types import TextHandler, AttributesHandler from scrapling.custom_types import TextHandler, AttributesHandler
from scrapling.storage_adaptors import SQLiteStorageSystem, StorageSystemMixin, _StorageTools from scrapling.storage_adaptors import SQLiteStorageSystem, StorageSystemMixin, _StorageTools
from scrapling.utils import setup_basic_logging, logging, clean_spaces, flatten, html_forbidden from scrapling.utils import setup_basic_logging, logging, clean_spaces, flatten, html_forbidden
from scrapling._types import Any, Dict, List, Tuple, Optional, Pattern, Union, Callable, Generator, SupportsIndex
from lxml import etree, html from lxml import etree, html
from cssselect import SelectorError, SelectorSyntaxError, parse as split_selectors from cssselect import SelectorError, SelectorSyntaxError, parse as split_selectors
+1 -1
View File
@@ -4,8 +4,8 @@ import logging
import threading import threading
from hashlib import sha256 from hashlib import sha256
from abc import ABC, abstractmethod from abc import ABC, abstractmethod
from typing import Dict, Optional, Union
from scrapling._types import Dict, Optional, Union
from scrapling.utils import _StorageTools, cache from scrapling.utils import _StorageTools, cache
from lxml import html from lxml import html
+1 -11
View File
@@ -9,24 +9,14 @@ which will be important in future releases but most importantly...
import re import re
from w3lib.html import HTML5_WHITESPACE from w3lib.html import HTML5_WHITESPACE
from typing import TYPE_CHECKING, Any, Optional
try:
from typing import Protocol
except ImportError:
# Added in Python 3.8
Protocol = object
from scrapling.utils import cache from scrapling.utils import cache
from scrapling._types import Any, Optional, Protocol, Self
from cssselect.xpath import ExpressionError from cssselect.xpath import ExpressionError
from cssselect.xpath import XPathExpr as OriginalXPathExpr from cssselect.xpath import XPathExpr as OriginalXPathExpr
from cssselect import HTMLTranslator as OriginalHTMLTranslator from cssselect import HTMLTranslator as OriginalHTMLTranslator
from cssselect.parser import Element, FunctionalPseudoElement, PseudoElement from cssselect.parser import Element, FunctionalPseudoElement, PseudoElement
if TYPE_CHECKING:
# typing.Self requires Python 3.11
from typing_extensions import Self
regex = f"[{HTML5_WHITESPACE}]+" regex = f"[{HTML5_WHITESPACE}]+"
replace_html5_whitespaces = re.compile(regex).sub replace_html5_whitespaces = re.compile(regex).sub