mirror of https://github.com/scrapy/scrapy.git
Reorder unions with None.
This commit is contained in:
parent
c9095ef927
commit
7196a11f53
|
|
@ -339,7 +339,7 @@ class SpiderMiddlewareManager(MiddlewareManager):
|
|||
@staticmethod
|
||||
def _get_async_method_pair(
|
||||
mw: Any, methodname: str
|
||||
) -> None | Callable | tuple[Callable, Callable]:
|
||||
) -> Callable | tuple[Callable, Callable] | None:
|
||||
normal_method: Callable | None = getattr(mw, methodname, None)
|
||||
methodname_async = methodname + "_async"
|
||||
async_method: Callable | None = getattr(mw, methodname_async, None)
|
||||
|
|
|
|||
|
|
@ -57,7 +57,7 @@ class Crawler:
|
|||
def __init__(
|
||||
self,
|
||||
spidercls: type[Spider],
|
||||
settings: None | dict[str, Any] | Settings = None,
|
||||
settings: dict[str, Any] | Settings | None = None,
|
||||
init_reactor: bool = False,
|
||||
):
|
||||
if isinstance(spidercls, Spider):
|
||||
|
|
|
|||
|
|
@ -197,7 +197,7 @@ def _get_inputs(
|
|||
|
||||
def _value(
|
||||
ele: InputElement | SelectElement | TextareaElement,
|
||||
) -> tuple[str | None, None | str | MultipleSelectOptions]:
|
||||
) -> tuple[str | None, str | MultipleSelectOptions | None]:
|
||||
n = ele.name
|
||||
v = ele.value
|
||||
if ele.tag == "select":
|
||||
|
|
@ -206,8 +206,8 @@ def _value(
|
|||
|
||||
|
||||
def _select_value(
|
||||
ele: SelectElement, n: str | None, v: None | str | MultipleSelectOptions
|
||||
) -> tuple[str | None, None | str | MultipleSelectOptions]:
|
||||
ele: SelectElement, n: str | None, v: str | MultipleSelectOptions | None
|
||||
) -> tuple[str | None, str | MultipleSelectOptions | None]:
|
||||
multiple = ele.multiple
|
||||
if v is None and not multiple:
|
||||
# Match browser behaviour on simple select tag without options selected
|
||||
|
|
|
|||
|
|
@ -40,7 +40,7 @@ class MiddlewareManager:
|
|||
self.middlewares = middlewares
|
||||
# Only process_spider_output and process_spider_exception can be None.
|
||||
# Only process_spider_output can be a tuple, and only until _async compatibility methods are removed.
|
||||
self.methods: dict[str, deque[None | Callable | tuple[Callable, Callable]]] = (
|
||||
self.methods: dict[str, deque[Callable | tuple[Callable, Callable] | None]] = (
|
||||
defaultdict(deque)
|
||||
)
|
||||
for mw in middlewares:
|
||||
|
|
|
|||
Loading…
Reference in New Issue