1
0
mirror of https://github.com/scrapy/scrapy.git synced 2025-02-06 10:24:24 +00:00

Fix Crawler.request_fingerprinter typing (#6605)

This commit is contained in:
Laerte Pereira 2025-01-07 06:40:49 -03:00 committed by GitHub
parent 4d31277bc6
commit f2234c5b96
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
3 changed files with 8 additions and 6 deletions

View File

@ -44,7 +44,7 @@ if TYPE_CHECKING:
from scrapy.logformatter import LogFormatter
from scrapy.spiderloader import SpiderLoader
from scrapy.statscollectors import StatsCollector
from scrapy.utils.request import RequestFingerprinter
from scrapy.utils.request import RequestFingerprinterProtocol
logger = logging.getLogger(__name__)
@ -80,7 +80,7 @@ class Crawler:
self.extensions: ExtensionManager | None = None
self.stats: StatsCollector | None = None
self.logformatter: LogFormatter | None = None
self.request_fingerprinter: RequestFingerprinter | None = None
self.request_fingerprinter: RequestFingerprinterProtocol | None = None
self.spider: Spider | None = None
self.engine: ExecutionEngine | None = None

View File

@ -29,7 +29,7 @@ if TYPE_CHECKING:
from scrapy.http.request import Request
from scrapy.settings import BaseSettings
from scrapy.spiders import Spider
from scrapy.utils.request import RequestFingerprinter
from scrapy.utils.request import RequestFingerprinterProtocol
logger = logging.getLogger(__name__)
@ -265,7 +265,9 @@ class DbmCacheStorage:
)
assert spider.crawler.request_fingerprinter
self._fingerprinter: RequestFingerprinter = spider.crawler.request_fingerprinter
self._fingerprinter: RequestFingerprinterProtocol = (
spider.crawler.request_fingerprinter
)
def close_spider(self, spider: Spider) -> None:
self.db.close()

View File

@ -30,7 +30,7 @@ if TYPE_CHECKING:
from scrapy import Spider
from scrapy.crawler import Crawler
from scrapy.http import Response
from scrapy.utils.request import RequestFingerprinter
from scrapy.utils.request import RequestFingerprinterProtocol
class FileInfo(TypedDict):
@ -47,7 +47,7 @@ logger = logging.getLogger(__name__)
class MediaPipeline(ABC):
crawler: Crawler
_fingerprinter: RequestFingerprinter
_fingerprinter: RequestFingerprinterProtocol
_modern_init = False
LOG_FAILED_RESULTS: bool = True