Scrapy-н HTTP прокси middleware-тэй хүсэлт бүрийн прокси
Хуучин өөрсдийн баталгаажуулалтын middleware-ийг crawler руу хуулахаас өмнө Scrapy хүсэлтийн мета өгөгдөл болон түүний прокси middleware-ийг ашиглана уу.
Scrapy-н HTTP прокси middleware нь проксийг хүсэлтийн мета өгөгдлөөс уншина:
yield scrapy.Request(
'https://example.com/',
callback=self.parse,
meta={'proxy': 'http://203.0.113.10:8080'},
)
Баримт бичгийн төгсгөлийн цэгийг сольж, middleware-ийг идэвхтэй үлдээнэ үү. HTTP прокси жагсаалт энэ хүсэлтийн URL-д нийтэд нээлттэй нэр дэвшигчдийг санал болгоно. Энэ нь хүсэлтийн замыг сонгоно; прокси пулд тусдаа сонголтын логик хэрэгтэй.
Баталгаажуулалт сонгосон төгсгөлийн цэгийг дагана
Суурилуулсан middleware нь дэмжигддэг прокси URL болон холбогдох зөвшөөрлийн толгойгоор өгөгдсөн итгэмжлэлийг зохицуулна. URL-ийн нөөцлөгдсөн тэмдэгтүүдийг escape хийнэ үү ба тухайн URL-ийг логт бүртгэхээс зайлсхийгээрэй.
Тусдаа middleware нь төгсгөлийн цэг өөрчлөгдсөний дараа өмнөх проксид зориулсан Basic толгойг хадгалах ёсгүй. Нэг давхарга зам болон түүний итгэмжлэлийг хамт удирдана.
Сонголтын дараалал ба өгөгдмөл утгууд
Хэрэв өөрсдийн татах middleware проксийг сонговол суурилуулсан прокси middleware хүсэлтийг боловсруулахаас өмнө ажиллуулна уу. Суулгасан хувилбарын дараалал болон API-г шалгана уу; хуучирсан scrapy.contrib импортууд хуучин хувилбаруудад хамаарна.
Процессийн орчин схемд хамаарах өгөгдмөл утгуудыг мөн өгч болно. Санаатай шууд хүсэлтийн хувьд proxy мета өгөгдлийн баримтжуулсан тусгай зан төлөвийг ашиглана уу: байхгүй түлхүүр нь шууд хандалт гэсэн үг биш.
Бодит үр дүнг шалгана уу. 407 нь прокси баталгаажуулалтад хамаарна, харин вэбсайтын хурдны хязгаар эсвэл хандалтаас татгалзах нь зам зөв ажилласны дараа ирж болно.