Адрас проксі змяняецца ў журнале. Прызначэнне ніколі не з'яўляецца ў журнале доступу проксі. Праверце, ці прапускае ваша прамежкавае ПЗ запыт да загрузчыка наогул.

У прамежкавым ПЗ загрузчыка Scrapy вяртанне Request азначае паўторнае планаванне гэтага запыту. Гэта не азначае «працягвайце адпраўляць гэты аб'ект з метаданымі, якія я толькі што змяніў».

Для селектара, які выбірае толькі маршрут, важная форма такая:

def process_request(self, request):
    request.meta['proxy'] = self.choose_proxy()
    return None

Гэты фрагмент паказвае бягучую форму перахопу; выкарыстоўвайце інтэрфейс прамежкавага ПЗ, які падтрымлівае ўсталяваны выпуск Scrapy. Селектар павінен вярнуць слушную канчатковую кропку і яўна апрацаваць недаступны пул. Публічнае абышліца, якое дазваляе публічных пасярэднікаў, можа браць HTTP-кандыдатаў з спісу HTTP-проксі для гэтага значэння вяртання.

Вяртанне None дазваляе астатняму прамежкаваму ПЗ запыту і загрузчыку працягваць. Вяртанне іншага Request карысна, калі вы наўмысна замяняеце або паўтараеце працу, але патрабуе прычыны і ўмовы выхаду.

Рататар, які кожны раз вяртае той жа запыт, можа раз за разам запускаць свой код выбару, так і не ўсталяваўшы злучэнне з прызначэннем. Павелічэнне тайм-аўтаў або адкрыццё дадатковых партоў проксі не выправіць гэты цыкл кіравання.

Разглядайце ўваход у прамежкавае ПЗ, паводзіны пры вяртанні і першую рэальную сеткавую спробу як асобныя падзеі. Радок журнала «выбраны проксі» сведчыць толькі пра тое, што селектар запусціўся. Ён не сведчыць, што запыт з выбранай канчатковай кропкай быў адпраўлены.

Падобныя артыкулы