insocks
Back to blog. Article language: BN EN ES FR HI ID PT RU UR VI ZH

Scrapy-তে প্রক্সি সেটআপ করা

Scrapy-তে একটি প্রক্সি অনুরোধগুলো একটি নিয়ন্ত্রিত এন্ডপয়েন্টের মাধ্যমে রাউট করে জনসাধারণের ডেটা নির্ভরযোগ্যভাবে সংগ্রহ করতে সাহায্য করে। একটি নিরাপদ Scrapy প্রক্সি সেটআপ লোকালাইজেশন, লোড ডিস্ট্রিবিউশন, মনিটরিং এবং স্থিতিশীল ক্রলিং-এ সহায়তা করে। যুক্তরাষ্ট্রে,প্রক্সি ব্যবহার করুন শুধুমাত্র robots.txt, শর্তাবলী এবং রেট লিমিট সম্মান করে আইনি জনসাধারণের ওয়ার্কফ্লোর জন্য।

কেন Scrapy প্রজেক্টগুলোর প্রক্সি প্রয়োজন

Scrapy প্রজেক্টগুলোর প্রক্সি প্রয়োজন হয় যখন একটি সরাসরি সংযোগ জনসাধারণের ডেটা সংগ্রহের জন্য অত্যন্ত সীমিত। একটি পরিকল্পিত Scrapy প্রক্সি ওয়ার্কফ্লো দলগুলোকে সংযোগ ব্যর্থতা কমাতে, আঞ্চলিক পৃষ্ঠাগুলো তুলনা করতে এবং পরীক্ষাগুলো পরিমাপযোগ্য রাখতে সাহায্য করে।

✅ আইনি পরিস্থিতি:

  • জনসাধারণের পণ্য পৃষ্ঠা মনিটরিং
  • আঞ্চলিক কন্টেন্টের জন্য QA
  • আপটাইম এবং উপলব্ধতা পরীক্ষা
  • অভ্যন্তরীণ ডেটা যাচাইকরণ

Scrapy-এর জন্য কোন প্রক্সি টাইপ সেরা

সেরা প্রক্সি টাইপ স্থিতিশীলতা, সেশনের দৈর্ঘ্য, মূল্য এবং অঞ্চলের উপর নির্ভর করে। দীর্ঘ জনসাধারণের পরীক্ষার জন্য, একটি Scrapy রোটেটিং প্রক্সি পরিকল্পনা স্বয়ংক্রিয়তাকে স্প্যামে পরিণত না করে অনুরোধগুলো অনুমোদিত রুট জুড়ে বিতরণ করতে পারে।

টাইপস্থিতিশীলতাসেরা জন্য
রেসিডেনশিয়ালউচ্চস্থানীয় জনসাধারণের পৃষ্ঠা
মোবাইলমাঝারিমোবাইল ওয়েব পরীক্ষা
ISPউচ্চদীর্ঘ সেশন
ডেটাসেন্টারমাঝারিঅভ্যন্তরীণ QA

শুরু করার আগে আপনার যা প্রয়োজন

সেটআপের আগে Scrapy, রুটের বিস্তারিত, প্রমাণপত্র এবং একটি পরীক্ষামূলক URL প্রস্তুত রাখুন। একটি Scrapy প্রক্সি মিডলওয়্যার পরিকল্পনায় স্পষ্ট মালিকানা, নিরাপদ স্টোরেজ এবং লগও প্রয়োজন।

✅ চেকলিস্ট:

  • Scrapy প্রজেক্ট
  • IP এবং পোর্ট
  • লগইন এবং পাসওয়ার্ড
  • পরীক্ষামূলক URL
  • রেট লিমিট
  • ত্রুটি লগিং

Scrapy-তে একটি একক প্রক্সি কীভাবে ধাপে ধাপে সেট করবেন

একটি রুট হলো সবচেয়ে সহজ প্রথম পরীক্ষা। এই সেটআপে, Scrapy প্রক্সি অ্যাক্সেস অনুরোধের মেটাডেটার মাধ্যমে পাস করা হয় এবং বিল্ট-ইন মিডলওয়্যার দ্বারা পরিচালিত হয়।

  • ধাপ ১। প্রক্সি মিডলওয়্যার সক্রিয় করুন।
  • ধাপ ২। অনুরোধের মেটাতে রুট যোগ করুন।
  • ধাপ ৩। একটি স্পাইডার চালান।
  • ধাপ ৪। স্ট্যাটাস কোড পরীক্ষা করুন।

class DemoSpider(scrapy.Spider):

name = "demo"

start_urls = ["https://example.com"]

def start_requests(self):

for url in self.start_urls:

yield scrapy.Request(

url,

meta={"proxy": "http://user:pass@host:port"}

)

অনুমোদিত ওয়ার্কফ্লোর জন্য httpproxymiddleware ব্যবহার করুন এবং সিক্রেটগুলো কোডের বাইরে রাখুন।

Scrapy-তে প্রক্সি প্রমাণীকরণ কীভাবে যোগ করবেন

প্রমাণীকরণ নিশ্চিত করে যে আপনার স্ক্রিপ্ট রুটটি ব্যবহার করার অনুমতি পেয়েছে। পেইড এন্ডপয়েন্টের জন্য, Scrapy প্রক্সি মিডলওয়্যারের লগইন ডেটা সুরক্ষিত রাখা উচিত এবং রিপোজিটরিতে পাসওয়ার্ড প্রকাশ না করে প্রক্সি প্রমাণীকরণ সমর্থন করা উচিত।

import base64

token = base64.b64encode(b"user:pass").decode()

headers = {"Proxy-Authorization": f"Basic {token}"}

yield scrapy.Request(

"https://example.com",

headers=headers,

meta={"proxy": "http://host:port"}

)

প্রমাণপত্রগুলো এনভায়রনমেন্ট ভ্যারিয়েবলে সংরক্ষণ করুন। কর্মী পরিবর্তনের পরে পাসওয়ার্ড রোটেট করুন।

মিডলওয়্যার দিয়ে প্রক্সি কীভাবে রোটেট করবেন

রোটেশন অনুরোধগুলো অনুমোদিত এন্ডপয়েন্ট জুড়ে বিতরণ করতে সাহায্য করে। একটি সতর্ক Scrapy রোটেটিং প্রক্সি ওয়ার্কফ্লো বিলম্ব, লগ এবং সীমাগুলো স্পষ্ট রেখে অনুরোধগুলোর মধ্যে রুট পরিবর্তন করে।

  • ধাপ ১। অনুমোদিত পুল সংরক্ষণ করুন।
  • ধাপ ২। প্রতিটি অনুরোধের জন্য একটি রুট বেছে নিন।
  • ধাপ ৩। মিডলওয়্যারে এটি সংযুক্ত করুন।
  • ধাপ ৪। রুট ID লগ করুন।

class ProxyMiddleware:

def __init__(self, routes):

self.routes = routes

@classmethod

def from_crawler(cls, crawler):

return cls(crawler.settings.getlist("PROXY_POOL"))

def process_request(self, request, spider):

request.meta["proxy"] = random.choice(self.routes)

একটি রোটেটিং প্রক্সি মিডলওয়্যার কখনোই রেট কন্ট্রোল বা কমপ্লায়েন্স রিভিউ প্রতিস্থাপন করা উচিত নয়।

DOWNLOAD_DELAY এবং AUTOTHROTTLE কীভাবে টিউন করবেন

বিলম্ব সেটিংস ক্রলগুলো স্থিতিশীল রাখে। একটি Scrapy রোটেটিং প্রক্সি সেটআপে এখনও ডাউনলোড বিলম্ব এবং অটোথ্রোটল ব্যবহার করা উচিত যাতে হঠাৎ ট্রাফিক স্পাইক এড়ানো যায়।

DOWNLOAD_DELAY = 2

AUTOTHROTTLE_ENABLED = True

AUTOTHROTTLE_START_DELAY = 1

AUTOTHROTTLE_MAX_DELAY = 10

CONCURRENT_REQUESTS = 8

সেটিংস পরিবর্তনের আগে রেসপন্স টাইম ট্র্যাক করুন।

রিট্রি এবং ব্যান কীভাবে হ্যান্ডল করবেন

রিট্রিগুলো সাময়িক নেটওয়ার্ক সমস্যা থেকে পুনরুদ্ধার করা উচিত, বারবার অ্যাক্সেস জোর করা উচিত নয়। একটি Scrapy প্রক্সি সেটআপে পরিমিত রিট্রি সীমা, স্পষ্ট বিরতি এবং লগ ব্যবহার করা উচিত যা দেখায় কেন একটি অনুরোধ ব্যর্থ হয়েছে।

💡 স্বাভাবিক ত্রুটির হার পরীক্ষা করার পরে RETRY_TIMES সেট করুন।

✅ করণীয়:

  • ছোট ব্যাচ ব্যবহার করুন
  • robots.txt সম্মান করুন
  • স্ট্যাটাস কোড মনিটর করুন

❌ করণীয় নয়:

  • অনির্দিষ্টকালের জন্য রিট্রি করুন না
  • 403 বা 429 প্যাটার্ন উপেক্ষা করুন না
  • জনসাধারণের পৃষ্ঠাগুলো ওভারলোড করুন না

Scrapy-তে প্রক্সি কাজ করছে কিনা কীভাবে যাচাই করবেন

যাচাইকরণ নিশ্চিত করে যে প্রকৃত সংগ্রহ শুরু হওয়ার আগে অনুরোধগুলো প্রত্যাশিত এন্ডপয়েন্টের মাধ্যমে যাচ্ছে। একটি পরীক্ষিত Scrapy প্রক্সি মিডলওয়্যার ফ্লোতে IP, অঞ্চল, রেসপন্স কোড এবং টাইমিং দেখানো উচিত।

যা পরীক্ষা করবেনপ্রত্যাশিত ফলাফল
IP ঠিকানানির্বাচিত এন্ডপয়েন্ট
অঞ্চলপরিকল্পিত এলাকা
স্ট্যাটাস কোডস্বাভাবিক রেসপন্স
গতিস্থিতিশীল টাইমিং

সাধারণ Scrapy প্রক্সি ত্রুটি এবং সমাধান

বেশিরভাগ ব্যর্থতা ভুল প্রমাণপত্র, মৃত রুট, পোর্ট বা দ্রুত সেটিংস থেকে আসে। যদি Scrapy প্রক্সি পরীক্ষা ব্যর্থ হয়, পুরো স্পাইডার পরিবর্তন না করে একটি সময়ে একটি ভ্যারিয়েবল পরীক্ষা করুন।

❌ সাধারণ সমস্যা:

  • সংযোগ প্রত্যাখ্যাত
  • টাইমআউট
  • প্রমাণীকরণ ব্যর্থতা
  • অত্যধিক রিট্রি
ত্রুটিকারণসমাধান
প্রত্যাখ্যাতভুল হোস্টরুট পুনরায় কপি করুন
টাইমআউটধীর এন্ডপয়েন্টঅন্য রুট পরীক্ষা করুন
প্রমাণীকরণ ব্যর্থভুল লগইনপ্রমাণপত্র রিফ্রেশ করুন
429খুব দ্রুতবিলম্ব বাড়ান

নৈতিক স্ক্র্যাপিং নোট (যুক্তরাষ্ট্র)

Scrapy জনসাধারণের ডেটা, QA, মনিটরিং এবং গবেষণার জন্য দায়িত্বশীলভাবে ব্যবহার করা যেতে পারে। একটি আইনি Scrapy প্রক্সি ওয়ার্কফ্লো robots.txt, সাইটের শর্তাবলী, জনসাধারণের ডেটার সীমানা এবং রেট লিমিট সম্মান করে।

যুক্তরাষ্ট্রে ব্যবহারের জন্য, কাজের উদ্দেশ্য, উৎস, মালিক এবং ধারণকাল নথিভুক্ত করুন। প্রক্সিগুলো কমপ্লায়েন্স সমর্থন করা উচিত, অপব্যবহারমূলক আচরণ লুকানো নয়।

Scrapy-এর জন্য একটি নির্ভরযোগ্য প্রক্সি নির্বাচন

একটি ভালো প্রদানকারী স্থিতিশীল রুট, স্পষ্ট অঞ্চল, সাপোর্ট এবং $-তে মূল্য অফার করে। উন্নত প্রজেক্টের জন্য, একটি Scrapy SOCKS5 প্রক্সি কার্যকর হতে পারে যখন প্রদানকারী এবং কানেক্টর এটি সমর্থন করে।

বৈশিষ্ট্যসুবিধা
স্থিতিশীল রুটকম ব্যর্থতা
স্পষ্ট অঞ্চলউন্নত পরীক্ষা
সাপোর্টদ্রুত সমাধান
মূল্যবাজেট নিয়ন্ত্রণ

একটি স্পাইডারের জন্য ডেমো চেষ্টা করুন, যাচাইকরণের পরে প্রক্সি কিনুন, অথবা সম্পূর্ণ অ্যাক্সেসের জন্য নিবন্ধন করুন।

মূল সারসংক্ষেপ

সংক্ষেপে: প্রক্সিগুলো Scrapy-কে নিয়ন্ত্রিত রুটের মাধ্যমে আইনি জনসাধারণের ওয়ার্কফ্লো চালাতে সাহায্য করে। একটি Scrapy প্রক্সি টার্গেট, রেট লিমিট এবং লগের সাথে মিলে যাওয়া উচিত। রোটেশন বিলম্ব এবং মনিটরিং সহ সবচেয়ে ভালো কাজ করে। প্রমাণীকরণ নিরাপদে সংরক্ষণ করা আবশ্যক।

সাধারণ জিজ্ঞাসা

Scrapy-তে আমি কীভাবে প্রক্সি সেট করবো?

অনুরোধের মেটাডেটায় রুট যোগ করুন এবং সঠিক মিডলওয়্যার সক্রিয় করুন।

Scrapy-তে আমি কীভাবে প্রক্সি রোটেট করবো?

কাস্টম মিডলওয়্যার ব্যবহার করুন যা প্রতিটি অনুরোধের জন্য একটি অনুমোদিত রুট নির্বাচন করে।

Scrapy কি SOCKS5 প্রক্সি সমর্থন করে?

হ্যাঁ, সঠিক কানেক্টর এবং প্রদানকারীর সমর্থন থাকলে।

Scrapy-তে আমি কীভাবে প্রক্সি প্রমাণীকরণ যোগ করবো?

প্রমাণপত্রগুলো হেডার, রুট ফরম্যাট বা এনভায়রনমেন্ট ভ্যারিয়েবলের মাধ্যমে নিরাপদে পাস করুন।

Scrapy দিয়ে স্ক্র্যাপিং করার সময় ব্যান এড়াবো কীভাবে?

robots.txt, সাইটের শর্তাবলী, রেট লিমিট এবং ডেটার সীমানা সম্মান করুন।

2026-07-15