প্রক্সি সেটআপ কীভাবে করবেন: ইউজারনেম থেকে স্ক্র্যাপার পর্যন্ত

ইউজারনেমের প্রতিটি অংশ কী করে তা জানলে যেকোনো টুলে প্রক্সি সেটআপ কয়েক মিনিটের কাজ। এই পেজে আছে টুল ধরে ধরে সেটআপ, এরর ঠিক করার উপায় আর টোকেন নিরাপদ রাখার পদ্ধতি।

1. অ্যাকাউন্ট খুলে অ্যাক্সেস টোকেন সেভ করুন

সাইন আপ পেজে অ্যাক্সেস টোকেন পাবেন। লগ ইন আর প্রক্সিতে যুক্ত হওয়ার পাসওয়ার্ড এটাই। সার্ভারে টোকেন থাকে না, তাই .txt ফাইলে সেভ করুন।

2. ব্যালান্স টপ আপ করুন

ড্যাশবোর্ডের টপ আপ অংশে পরিমাণ বেছে অনুরোধ পাঠান। $30 থেকে টপ আপ করা যায়, পেমেন্ট নিশ্চিত হলে ব্যালান্সে যোগ হয়।

3. ইউজারনেম তৈরি করুন

ইউজারনেমে দেশ, শহর ও সেশন দিয়ে অবস্থান আর IP ধরে রাখার ধরন ঠিক করুন। ড্যাশবোর্ডের সংযোগের তথ্য তৈরি অংশে বাছলে নিজে থেকে তৈরি হয়।

ইউজারনেমের উদাহরণ

প্রতি রিকোয়েস্টে নতুন IP
user-country-us
শহর বাছাই
user-country-us-city-new_york
একই IP রাখা
user-country-us-session-shop1
মোবাইল IP
user-type-mobile-country-us

4. সংযোগ যাচাই করুন

curl দিয়ে রিকোয়েস্ট পাঠিয়ে উত্তরের IP আর দেশ দেখুন।

সংযোগের ধরন

HTTP

http://user-country-us:YOUR_TOKEN@gate.proxytoo.com:7000

SOCKS5

socks5://user-country-us:YOUR_TOKEN@gate.proxytoo.com:7000

curl

curl -x http://gate.proxytoo.com:7000 -U "user-country-us:YOUR_TOKEN" https://ipinfo.io/json

5. আপনার টুলে বসান

Python, Node.js বা ব্রাউজার অটোমেশন টুলে হোস্ট, ইউজারনেম ও টোকেন দিন।

কোডের উদাহরণ

Python (requests)

import requests

proxy = "http://user-country-us:YOUR_TOKEN@gate.proxytoo.com:7000"
res = requests.get("https://ipinfo.io/json",
                   proxies={"http": proxy, "https": proxy})
print(res.json())

Node.js (undici)

import { ProxyAgent, fetch } from "undici";

const agent = new ProxyAgent("http://user-country-us:YOUR_TOKEN@gate.proxytoo.com:7000");
const res = await fetch("https://ipinfo.io/json", { dispatcher: agent });
console.log(await res.json());

Puppeteer

const browser = await puppeteer.launch({
  args: ["--proxy-server=http://gate.proxytoo.com:7000"],
});
const page = await browser.newPage();
await page.authenticate({ username: "user-country-us", password: "YOUR_TOKEN" });
await page.goto("https://ipinfo.io/json");

সংযোগে সমস্যা হলে

  • 407 Proxy Authentication Required

    ইউজারনেম বা টোকেন মিলছে না। বাড়তি ফাঁকা ছাড়া হুবহু পেস্ট করেছেন কি না দেখুন।

  • সংযোগের সময় শেষ

    শহর পর্যন্ত বেছে থাকলে শুধু দেশ দিয়ে আবার চেষ্টা করুন। অফিসের ফায়ারওয়াল 7000 পোর্ট আটকাচ্ছে কি না তাও দেখুন।

  • সাইট বারবার ব্লক করছে

    রিকোয়েস্টের মাঝে বিরতি বাড়ান আর প্রতি রিকোয়েস্টে IP বদলান। কড়া ব্লকিংয়ের সাইটে রেসিডেনশিয়াল প্রক্সি উপযুক্ত।

প্রক্সি ইউজারনেম কীভাবে পড়ব?

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

country এর পরে আসে ছোট হাতের অক্ষরে দুই অক্ষরের দেশের কোড। user-country-us মানে যুক্তরাষ্ট্রের IP আর user-country-jp মানে জাপানের IP। city এর পরে আসে ছোট হাতের অক্ষরে শহরের নাম, ফাঁকা জায়গা আন্ডারস্কোরে বদলে, যেমন user-country-us-city-new_york।

session এর পরে আসে আপনার বেছে নেওয়া সেশনের নাম। user-country-jp-session-shop1 দিলে ওই নাম ব্যবহার করা প্রতিটি রিকোয়েস্ট 120 মিনিট পর্যন্ত একই IP রাখে। মোবাইল IP দিয়ে বের হতে type-mobile যোগ করুন, যেমন user-type-mobile-country-gb।

পাসওয়ার্ডের জায়গায় সবসময় আপনার অ্যাক্সেস টোকেন যায়, যা pt_ দিয়ে শুরু হয়। অবস্থান বা সেশন বদলাতে শুধু ইউজারনেম বদলান, টোকেন যেমন আছে রেখে দিন।

  • user সেটিংসের শুরু বোঝায়।
  • country আর দুই অক্ষরের কোড দেশ বেছে নেয়।
  • city আর আন্ডারস্কোর দেওয়া নাম শহর বেছে নেয়।
  • session আর একটি নাম একই IP ধরে রাখে।
  • type-mobile মোবাইল IP বেছে নেয়।

HTTP বনাম SOCKS5 প্রক্সি: কোনটি ব্যবহার করব?

ওয়েব স্ক্র্যাপিং ও ব্রাউজারের কাজে HTTP প্রক্সি সহজ ডিফল্ট, আর ওয়েবের বাইরের ট্রাফিক বা যেখানে DNS প্রক্সির দিকে রিজলভ করাতে চান এমন সেটআপে SOCKS5 প্রক্সি মানানসই। ProxyToo দুটোই একটি গেটওয়েতে গ্রহণ করে, gate.proxytoo.com:7000। একই ইউজারনেম ও টোকেন রেখে শুধু ঠিকানার শুরুর স্কিম বদলান।

HTTP প্রক্সি তৈরি হয়েছে ওয়েব রিকোয়েস্টের জন্য, তাই প্রায় সব লাইব্রেরি ও ব্রাউজার এগুলো সরাসরি বোঝে। HTTPS সাইটও কাজ করে, কারণ প্রক্সি সংযোগের জন্য একটি এনক্রিপ্টেড টানেল খোলে। requests, Scrapy, Puppeteer ও Playwright এর মতো ওয়েব টুলে HTTP ফরম্যাট দিয়ে শুরু করুন।

SOCKS5 সংযোগটিকেই রিলে করে, তাই এটি ওয়েবের বাইরেও নানা ধরনের ট্রাফিক বহন করতে পারে। Python এ ঠিকানা socks5h দিয়ে শুরু করলে প্রক্সি বের হওয়ার দেশে হোস্টনেম রিজলভ করে, ফলে আপনার অবস্থান সামঞ্জস্যপূর্ণ থাকে। Chromium ভিত্তিক ব্রাউজারে ইউজারনেমসহ SOCKS5 এর সমর্থন সীমিত, তাই ব্রাউজার অটোমেশনে HTTP বেশি মসৃণ পছন্দ।

  • ওয়েব স্ক্র্যাপিং ও ব্রাউজার অটোমেশনে HTTP
  • ওয়েবের বাইরের ট্রাফিক পাঠানো প্রোগ্রামে SOCKS5
  • প্রক্সির দেশে DNS রিজলভ করতে socks5h ঠিকানা
  • দুটোর জন্যই একই ইউজারনেম ও টোকেন

ব্রাউজার বা অ্যান্টিডিটেক্ট ব্রাউজারে প্রক্সি কীভাবে যোগ করব?

সাধারণ ব্রাউজারে একটি প্রক্সি এক্সটেনশন খুলে আলাদা ঘরে চারটি মান দিন: হোস্ট, পোর্ট, ইউজারনেম ও টোকেন। ড্যাশবোর্ডে সংযোগের তথ্য তৈরি অংশে host:port:user:pass ফরম্যাট বেছে নিলে চারটি মানই এক লাইনে আসে, ঘর ধরে ধরে কপি করার জন্য প্রস্তুত। প্রথম পেজ লোডের সময় লগইন উইন্ডো এলে সেখানে ইউজারনেম ও টোকেন দিন।

অ্যান্টিডিটেক্ট ব্রাউজার প্রতিটি প্রোফাইলকে নিজস্ব ব্রাউজার পরিবেশ দেয়, তাই মূল নিয়ম হলো প্রতিটি প্রোফাইলে একটি ইউজারনেম। প্রোফাইলের প্রক্সি ঘরে HTTP বা SOCKS5 বেছে নিন, তারপর ইউজারনেমে সেশনের অংশ যোগ করুন এবং প্রতিটি প্রোফাইলে আলাদা সেশন নাম দিন। তাহলে প্রতিটি প্রোফাইল নিজস্ব IP পায়, আর সেই প্রোফাইলের ভেতরে IP একই থাকে।

প্রোফাইলের ভাষা, টাইম জোন ও অবস্থান বেছে নেওয়া দেশের সাথে মেলান, যাতে পেজ স্থানীয় ভিজিটরের মতো দেখায়। দীর্ঘ সময় একটি অ্যাকাউন্ট চালানো প্রোফাইলের জন্য ISP প্রক্সি বা ডেডিকেটেড ডেটাসেন্টার প্রক্সি পুরো মেয়াদে একই IP রাখে। যেকোনোটি ড্যাশবোর্ডে পণ্য কিনুন অংশে পরিমাণ ও মেয়াদ বেছে অর্ডার করুন।

  • প্রতিটি প্রোফাইলে একটি সেশন নাম
  • ভাষা ও টাইম জোন IP এর দেশের সাথে মিলানো
  • দীর্ঘ সময় চলা প্রোফাইলে ISP প্রক্সি
  • লগইন উইন্ডোতে ইউজারনেম ও টোকেন

Python requests ও Scrapy তে প্রক্সি কীভাবে ব্যবহার করব?

Python এ প্রক্সিকে http://username:token@gate.proxytoo.com:7000 এর মতো একটি লাইন হিসেবে তৈরি করে লাইব্রেরির প্রক্সি সেটিংয়ে দিন। requests এ মূল ধাপ হলো http ও https দুই এন্ট্রিতেই একই ঠিকানা দেওয়া। দুটো এন্ট্রি পূরণ করলে HTTPS রিকোয়েস্টও প্রক্সি দিয়ে যায়।

requests এর Session অবজেক্টে একবার প্রক্সি সেট করলে সেই সেশনের প্রতিটি রিকোয়েস্ট তা ব্যবহার করে। প্রতি রিকোয়েস্টে নতুন IP চাইলে শুধু দেশের ইউজারনেম, আর লগইনের মতো ধারাবাহিক প্রবাহে সেশনের অংশসহ ইউজারনেম ব্যবহার করুন। SOCKS5 এর জন্য requests এর SOCKS এক্সট্রা ইনস্টল করে ঠিকানার শুরু socks5h করে দিন।

Scrapy তে একই ধরনের ঠিকানা প্রতিটি রিকোয়েস্টের meta proxy মানে দিন, আর বিল্ট ইন প্রক্সি মিডলওয়্যার ইউজারনেম ও টোকেনকে নিজেই অথেনটিকেশন হেডারে রূপান্তর করে। প্রতিটি রিকোয়েস্টে একই সেটিং প্রয়োগ করতে একটি ছোট ডাউনলোডার মিডলওয়্যার লিখুন যা proxy মান পূরণ করে। ট্রাফিক সেশনে ভাগ করতে সেই মিডলওয়্যার দিয়ে রিকোয়েস্টের প্রতিটি ব্যাচকে আলাদা সেশন নাম দিন।

CONCURRENT_REQUESTS ও DOWNLOAD_DELAY এর মতো সেটিং দিয়ে একসাথে চলা রিকোয়েস্ট ও গতি ঠিক করুন। কম দিয়ে শুরু করুন, রেসপন্স স্থির কিনা দেখুন, তারপর গতি ও সাফল্যের ভারসাম্য রেখে ধাপে ধাপে বাড়ান। রেসিডেনশিয়াল প্রক্সি ব্যবহৃত ট্রাফিক অনুযায়ী বিল হয়, তাই ছবি ও ফন্ট বাদ দিলে ব্যালেন্স বেশি দিন চলে।

Node.js, Puppeteer ও Playwright এ প্রক্সি কীভাবে সেট করব?

Node.js এ সাধারণ উপায় হলো একটি প্রক্সি এজেন্ট তৈরি করে আপনার রিকোয়েস্ট লাইব্রেরিকে দেওয়া। HTTP এর জন্য https-proxy-agent বা undici এর ProxyAgent এর মতো প্যাকেজ, আর SOCKS5 এর জন্য socks-proxy-agent ব্যবহার করুন, ইউজারনেম ও টোকেনসহ একটি ঠিকানা দিয়ে। এজেন্ট একবার তৈরি করে রিকোয়েস্টগুলোতে আবার ব্যবহার করুন, তাতে সংযোগ পুনরায় কাজে লাগে এবং দ্রুত থাকে।

Puppeteer এ --proxy-server লঞ্চ আর্গুমেন্টে শুধু গেটওয়ের ঠিকানা দিন, তারপর পেজ খোলার পর page.authenticate দিয়ে ইউজারনেম ও টোকেন আলাদাভাবে পাঠান। Chrome এ এভাবে ভাগ করাই সবচেয়ে নির্ভরযোগ্য সেটআপ। দেশ বা সেশন বদলাতে সবচেয়ে সহজ পথ হলো নতুন ইউজারনেম দিয়ে আরেকটি ব্রাউজার চালু করা।

Playwright এ proxy লঞ্চ অপশনে server, username ও password সেট করুন, এক ধাপেই অথেনটিকেশন হয়ে যায়। password ঘরে আপনার অ্যাক্সেস টোকেন যায়। একটি ব্রাউজার চালু করে প্রতিটি context কে নিজস্ব প্রক্সিও দিতে পারেন, তাই প্রতিটি context এর সাথে একটি সেশন নাম জুড়ে দিলে একটি স্ক্রিপ্টই পাশাপাশি কয়েকটি IP চালাতে পারে।

ব্রাউজার অটোমেশন প্রতিটি পেজে ছবি, ভিডিও ও ফন্ট ডাউনলোড করে, যা মিলে অনেক ট্রাফিক হয়। রিকোয়েস্ট ইন্টারসেপশন দিয়ে অপ্রয়োজনীয় রিসোর্স আটকালে প্রতি GB বিল হওয়া রেসিডেনশিয়াল ও মোবাইল প্রক্সির খরচ কমে। সেশন নাম যোগ করলে পেজ লোডের সময় IP স্থির থাকে, ফলে পেজ ঠিকঠাক দেখায়।

রোটেটিং প্রক্সি না স্টিকি সেশন: স্ক্র্যাপিংয়ে কোনটি ভালো?

যে স্ক্র্যাপিংয়ে প্রতিটি পেজ আলাদাভাবে পড়া হয় সেখানে প্রতি রিকোয়েস্টে নতুন IP, আর লগইন বা কার্টের মতো ধারাবাহিক প্রবাহে সেশন ব্যবহার করুন। সেশনের অংশ না থাকলে প্রতি রিকোয়েস্টে IP বদলায়, আর থাকলে সেই নামে IP একই থাকে। একটি টোকেনই দুটো সামলায়, তাই কাজের প্রতিটি ধাপ অনুযায়ী বেছে নিতে পারেন।

রোটেটিং মোড এমন কাজে মানানসই যেখানে পেজগুলোর মধ্যে কোনো সম্পর্ক নেই, যেমন সার্চ ফলাফল, পণ্যের তালিকা ও দামের টেবিল। রিকোয়েস্ট অনেক IP তে সমানভাবে ছড়ায়, তাই সাইটের কাছে এগুলো অনেক ভিজিটরের সাধারণ ট্রাফিকের মতো দেখায়। একটি সাইটের বড় ক্রলেও রিকোয়েস্টের মাঝে বিরতি রাখলে সব স্থির থাকে।

সেশনের ক্ষেত্রে কৌশল হলো কাজের প্রতিটি এককের জন্য আলাদা সেশন নাম। পাঁচটি স্টোর অ্যাকাউন্ট যাচাই করলে সেগুলোর নাম দিন shop1 থেকে shop5, যাতে প্রতিটি অ্যাকাউন্ট নিজের IP রাখে। কাজকে এমন ছোট প্রবাহে ভাগ করুন যা সেশনের সময়সীমার মধ্যে শেষ হয়, তাহলে পুরো প্রবাহে একটি IP থাকে।

পুরো এক মাস একই IP দরকার হলে ISP প্রক্সি বা ডেডিকেটেড ডেটাসেন্টার প্রক্সি সবচেয়ে মানানসই, আর কম ইউনিট দামে বিপুল পরিমাণের জন্য শেয়ার্ড ডেটাসেন্টার প্রক্সি বা IPv6 প্রক্সি ভালো বিকল্প। মিশ্র দেশে সমস্যা নেই এমন ভারী ট্রাফিকের কাজে প্রতিদিন $37.58 দামের আনলিমিটেড রেসিডেনশিয়াল প্রক্সি খরচের পরিকল্পনা সহজ করে।

  • স্বতন্ত্র পেজের জন্য প্রতি রিকোয়েস্টে নতুন IP
  • লগইন ও চেকআউট প্রবাহে ধরে রাখা সেশন নাম
  • কাজের প্রতিটি এককে আলাদা সেশন নাম
  • পুরো মাস একটি IP এর জন্য ISP বা ডেডিকেটেড ডেটাসেন্টার

প্রক্সি IP কীভাবে যাচাই করব এবং সংযোগের এরর কীভাবে ঠিক করব?

সবচেয়ে দ্রুত যাচাই হলো প্রক্সি দিয়ে এমন একটি পেজে রিকোয়েস্ট পাঠানো যা আপনার IP দেখায়, তারপর নিশ্চিত হওয়া যে IP ও দেশ আপনার ইউজারনেমের দেশের সাথে মেলে। ড্যাশবোর্ডে সংযোগের তথ্য তৈরি অংশে curl ফরম্যাট বেছে নিলে টার্মিনালে পেস্ট করার জন্য তৈরি যাচাই কমান্ড পাবেন। সেশন সেট করে থাকলে একই কমান্ড দুই তিনবার পাঠিয়ে নিশ্চিত হোন যে IP ধরে আছে।

407 রেসপন্স মানে প্রক্সি আপনার লগইন তথ্য গ্রহণ করেনি, আর সাধারণত কারণ ইউজারনেম বা টোকেনের একটি অক্ষর। দেখুন টোকেন pt_ দিয়ে শুরু হয়েছে কিনা, কপি করার সময় কোনো ফাঁকা জায়গা বা লাইন ব্রেক সাথে চলে এসেছে কিনা, আর ইউজারনেম user দিয়ে শুরু হয়েছে কিনা। এক লাইনের ঠিকানার ভেতরে বিশেষ অক্ষর এলে সেগুলো URL এনকোড করলেই সমস্যা মিটে যায়।

403 বা 429 এর মতো রেসপন্স আসে সাইট থেকে, অর্থাৎ প্রক্সি সংযোগ কাজ করেছে আর সাইট রিকোয়েস্টের গতি বা ধরন লক্ষ করছে। রিকোয়েস্টের মাঝে বিরতি দিন, ব্রাউজারের মতো হেডার পাঠান, আর সেশন ছেড়ে প্রতি রিকোয়েস্টে নতুন IP তে যান।

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

  • 407 মানে ইউজারনেম ও টোকেন যাচাই করুন
  • 403 বা 429 মানে গতি কমান ও IP বদলান
  • টাইমআউট মানে নেটওয়ার্ক, শহর ও টাইমআউট যাচাই করুন
  • সেশন পরীক্ষায় একই কমান্ড কয়েকবার চালান

প্রক্সি অ্যাক্সেস টোকেন কীভাবে নিরাপদ রাখব?

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

টোকেন কোডের বাইরে রাখুন এবং এনভায়রনমেন্ট ভেরিয়েবল বা আলাদা কনফিগ ফাইল থেকে লোড করুন। সেই কনফিগ ফাইল .gitignore এ যোগ করুন যাতে এটি রিপোজিটরির বাইরে থাকে, আর শেয়ার্ড সার্ভারে ফাইলের অনুমতি কড়া করুন যাতে শুধু আপনিই পড়তে পারেন। এভাবে কোড শেয়ার করতে পারবেন, আর টোকেন থাকবে আপনার নিজের মেশিনে।

লগ ও স্ক্রিনশটের দিকেও খেয়াল রাখুন। এররের সময় পুরো প্রক্সি ঠিকানা প্রিন্ট করলে টোকেন সরাসরি লগে লেখা হয়ে যায়, তাই ঠিকানা লগ করার সময় টোকেনের অংশ ঢেকে দিন। প্রশ্ন বা স্ক্রিনশট পোস্ট করার সময় শুধু ইউজারনেম দেখান এবং আগে টোকেন সরিয়ে দিন।

  • টোকেন ফাইল দুই জায়গায় সংরক্ষিত
  • টোকেন এনভায়রনমেন্ট ভেরিয়েবল থেকে লোড
  • কনফিগ ফাইল রিপোজিটরির বাইরে
  • লগ ও স্ক্রিনশটে টোকেন ঢাকা

দায়িত্বের সঙ্গে ব্যবহার

  • প্রকাশ্য তথ্যই সংগ্রহ করুন, অনুমতি ছাড়া অন্যের অ্যাকাউন্টে ঢুকবেন না।
  • সাইটের ওপর চাপ না পড়ে, তাই রিকোয়েস্টের মাঝে বিরতি রাখুন।
  • স্প্যাম পাঠানো, অননুমোদিত প্রবেশ বা প্রতারণার কাজে ব্যবহার করা যাবে না।

টোকেন নিন, দরকারি দেশের IP দিয়ে এখনই যুক্ত হন

সাইন আপে লাগে শুধু একটি টোকেন। $30 থেকে টপ-আপ করুন এবং এক ব্যালেন্সে সব ধরনের প্রক্সি ব্যবহার করুন।

টোকেন নিয়ে শুরু করুন