моя контактная информация
Почтамезофия@protonmail.com
2024-07-12
한어Русский языкEnglishFrançaisIndonesianSanskrit日本語DeutschPortuguêsΕλληνικάespañolItalianoSuomalainenLatina
Позвольте мне с радостью вновь сыграть роль главного героя некой красивой истории.
Сыграйте роль любовника, с которым вы делились своими мечтами в последние годы.
Давай будем возлюбленными, которые больше не будут лить слезы любви.
Притворяясь, что у меня те же сцены, что и раньше
Переиграйте роль главного героя красивой истории
Сыграйте роль любовника, с которым вы делились своими мечтами в последние годы.
Хоть ты и не понимаешь, ты все равно один поздно ночью
Носи свой бесшумный свитер, как будто я рядом с тобой
🎵 陈慧娴《傻女》
Scrapy — это мощная среда сканирования. Используя промежуточное программное обеспечение, пользователи могут настраивать и расширять поведение сканера. Промежуточное программное обеспечение предоставляет механизм предварительной и последующей обработки запросов и ответов, позволяя пользователям расширять функциональность сканера без изменения основного кода.
В Scrapy порядок выполнения промежуточного программного обеспечения определяется его «приоритетом». Понимание и правильная настройка иерархии промежуточного программного обеспечения имеет решающее значение для создания эффективного и удобного в обслуживании сканера.
Промежуточное программное обеспечение — это крючок в Scrapy, который позволяет пользователям выполнять собственный код при обработке запросов и ответов. Промежуточное программное обеспечение делится на две категории:
Уровень промежуточного программного обеспечения определяет порядок их выполнения. Scrapy использует целочисленное значение для представления уровня промежуточного программного обеспечения. Чем меньше значение, тем раньше выполняется промежуточное программное обеспечение.
DOWNLOADER_MIDDLEWARES = {
'myproject.middlewares.CustomDownloaderMiddleware': 543,
'scrapy.downloadermiddlewares.useragent.UserAgentMiddleware': 400,
'scrapy.downloadermiddlewares.retry.RetryMiddleware': 500,
}
В приведенной выше конфигурации:
CustomDownloaderMiddleware 的等级为 543
UserAgentMiddleware 的等级为 400
RetryMiddleware 的等级为 500
Последовательность выполнения следующая:
UserAgentMiddleware(400)
RetryMiddleware(500)
CustomDownloaderMiddleware(543)
Запросы исходят от движка, проходят через промежуточное программное обеспечение нижнего уровня и, наконец, достигают загрузчика. Когда ответ возвращается от загрузчика, он сначала проходит через промежуточное программное обеспечение более высокого уровня и, наконец, достигает движка.
Промежуточное программное обеспечение сканера расположено между движком и сканером. Вот пример конфигурации:
SPIDER_MIDDLEWARES = {
'myproject.middlewares.CustomSpiderMiddleware': 543,
'scrapy.spidermiddlewares.httperror.HttpErrorMiddleware': 50,
'scrapy.spidermiddlewares.offsite.OffsiteMiddleware': 500,
}
В приведенной выше конфигурации:
CustomSpiderMiddleware 的等级为 543
HttpErrorMiddleware 的等级为 50
OffsiteMiddleware 的等级为 500
Последовательность выполнения следующая:
HttpErrorMiddleware(50)
OffsiteMiddleware(500)
CustomSpiderMiddleware(543)
Запросы исходят от механизма, проходят через промежуточное программное обеспечение нижнего уровня и, наконец, достигают сканера. Когда ответ возвращается от сканера, он сначала проходит через промежуточное программное обеспечение более высокого уровня и, наконец, достигает механизма.
Чтобы установить уровень промежуточного программного обеспечения, вам необходимо определить соответствующий словарь в файле конфигурации Scrapy settings.py и указать путь и уровень промежуточного программного обеспечения. Например:
DOWNLOADER_MIDDLEWARES = {
'myproject.middlewares.CustomDownloaderMiddleware': 543,
'scrapy.downloadermiddlewares.useragent.UserAgentMiddleware': 400,
}
SPIDER_MIDDLEWARES = {
'myproject.middlewares.CustomSpiderMiddleware': 543,
'scrapy.spidermiddlewares.httperror.HttpErrorMiddleware': 50,
}
В этом примере мы определяем промежуточное ПО загрузчика CustomDownloaderMiddleware и промежуточное ПО сканера CustomSpiderMiddleware и устанавливаем для них уровни 543 соответственно.
Scrapy предоставляет множество встроенных промежуточных программ, каждый из которых имеет уровень по умолчанию. Вот некоторые распространенные промежуточные программы загрузчика и их уровни по умолчанию:
UserAgentMiddleware: 400
RetryMiddleware: 500
RedirectMiddleware: 600
CookiesMiddleware: 700
Для промежуточного программного обеспечения сканера распространенными являются:
HttpErrorMiddleware: 50
OffsiteMiddleware: 500
RefererMiddleware: 700
Промежуточное программное обеспечение — мощная функция платформы Scrapy. Правильно настроив уровень промежуточного программного обеспечения, вы можете точно контролировать обработку запросов и ответов. Понимание и использование правил установки уровней промежуточного программного обеспечения может помочь создать более гибкую и эффективную систему сканирования.