scrapy-proxy-pool: বেন চিনাক্তকৰণত বাইনেৰী সঁহাৰি পৰিচালনা
ষ্টেটাছ আৰু খালী-শৰীৰৰ সিদ্ধান্ত ৰাখি scrapy-proxy-pool ৰ পাঠ-আৰ্হি পৰীক্ষা TextResponse লৈ সীমাবদ্ধ কৰক।
এটা PDF বা ছবি প্ৰক্সিৰ জৰিয়তে সফলভাৱে আহি তাৰ পিছত বেন চিনাক্তকৰণত বিফল হ’ব পাৰে। Scrapy ৰ মূল Response এ body বাইট প্ৰদৰ্শন কৰে, কিন্তু ইয়াৰ text ধৰ্মই “Response content isn't text.” ত্ৰুটি দিয়ে।
যদি ইনষ্টল কৰা scrapy-proxy-pool নীতিয়ে অবাধে response.text সন্ধান কৰে, তেন্তে সেই নীতিক ধৰণ-সচেতন সংস্কৰণেৰে সলনি কৰক:
from scrapy.http import TextResponse
from scrapy_proxy_pool.policy import BanDetectionPolicy
class BinaryAwarePolicy(BanDetectionPolicy):
def response_is_ban(self, request, response):
if isinstance(response, TextResponse):
if self.BANNED_PATTERN.search(response.text):
return True
if response.status not in self.NOT_BAN_STATUSES:
return True
return response.status == 200 and not response.body
পেকেজৰ এক্সটেনশ্যন ছেটিংৰ জৰিয়তে ইয়াক বাছনি কৰক:
PROXY_POOL_BAN_POLICY = "myproject.policy.BinaryAwarePolicy"
ই নীতিটোৰ ষ্টেটাছ আৰু খালী-শৰীৰ নিয়ম ৰাখে আৰু পাঠ সন্ধান কেৱল সমৰ্থন কৰা সঁহাৰিলৈ সীমাবদ্ধ কৰে। উত্তৰাধিকাৰী ব্যতিক্ৰম নীতিও উপলব্ধ হৈ থাকে।
অৱশিষ্ট নিয়মবোৰো এপ্লিকেচনৰ বাবে পৰ্যালোচনা কৰক: ইচ্ছাকৃতভাৱে খালী 200 সঁহাৰি বা সাধাৰণ গন্তব্য ত্ৰুটি সদায় বেয়া প্ৰক্সিৰ প্ৰমাণ নহয়। মিডলৱেৰ সক্ৰিয় ৰাখি বিফলতাৰ কাৰণ শ্ৰেণীবিভাগ সলনি কৰক, বাইনেৰী ডাউনলোডৰ বাবে সকলো বেন চিনাক্তকৰণ বন্ধ নকৰি।