Selenium WebDriver-এ অথেন্টিকেটেড প্রক্সি কীভাবে সেট আপ করবেন
Updated:
স্ট্যান্ডার্ড ChromeDriver --proxy-server=http://ip:port ফ্ল্যাগ ইনলাইন user:pass ক্রেডেনশিয়াল অগ্রাহ্য করে এবং একটি ব্লকিং লগইন ডায়ালগ পপ আপ করে। Selenium-এ নির্বিঘ্নে VinaProxy অথেন্টিকেটেড HTTP(S) প্রক্সি ব্যবহার করতে, selenium-wire-এর মাধ্যমে আপনার ক্রেডেনশিয়াল পাস করুন অথবা একটি ছোট Chrome onAuthRequired ব্যাকগ্রাউন্ড এক্সটেনশন লোড করুন।
http://user:pass@ip:port (selenium-wire / Chrome proxy extension)- 1টি IP৪০,০০০₫
- 5+ টি IP৩৫,০০০₫
- 10+ টি IP২৫,০০০₫
- 20+ টি IP২৫,০০০₫
- 50+ টি IP২৫,০০০₫
- 100+ টি IP২৫,০০০₫
- 200+ টি IP২৫,০০০₫
- 500+ টি IP২৫,০০০₫
- 1000+ টি IP২২,০০০₫
- 2000+ টি IP২০,০০০₫
- 1টি IP৭৫,০০০₫
- 3+ টি IP৭০,০০০₫
- 5+ টি IP৬৫,০০০₫
- 10+ টি IP৬০,০০০₫
- 50+ টি IP৬০,০০০₫
- 100+ টি IP৬০,০০০₫
- 200+ টি IP৬০,০০০₫
- 500+ টি IP৫৫,০০০₫
Selenium-এ প্রক্সি অথেন্টিকেট করার দুটি নির্ভরযোগ্য উপায়
আপনার ল্যাঙ্গুয়েজ রানটাইম এবং ব্রাউজার ড্রাইভারের সাথে মানানসই পদ্ধতিটি বেছে নিন:
| পদ্ধতি | কনফিগারেশন সিনট্যাক্স | যে কাজের জন্য সেরা |
|---|---|---|
selenium-wire (Python) | seleniumwire_options={'proxy': {'http': 'http://user:pass@ip:port', 'https': 'http://user:pass@ip:port'}} | সবচেয়ে দ্রুত Python সেটআপ; সেশনের মাঝামাঝি প্রক্সি হট-সোয়াপিং সমর্থন করে |
| Chrome অথ এক্সটেনশন | chrome.webRequest.onAuthRequired হ্যান্ডেল করে এমন একটি জিপ করা এক্সটেনশন লোড করুন | Python, Java, C#, এবং undetected-chromedriver জুড়ে স্ট্যান্ডার্ড Selenium |
| Playwright-এ মাইগ্রেট করুন | browser.newContext({ proxy: { server, username, password } }) | কোনো এক্সটেনশন ছাড়াই নেটিভ পার-কনটেক্সট প্রক্সি অথ |
প্রক্সির মাধ্যমে Selenium স্ক্র্যাপিংয়ের জন্য পারফরম্যান্স টিপস
options.page_load_strategy = 'eager'সেট করুন যাতে ধীরগতির থার্ড-পার্টি ট্র্যাকারের জন্য অপেক্ষা না করে DOM ইন্টারঅ্যাক্টিভ হওয়ার সাথে সাথেই WebDriver কাজ করতে পারে- হেডলেস চালালে
--headless=new(Chrome 109+) ব্যবহার করুন, যাতে Chrome এক্সটেনশন এবং প্রক্সি অথ হেডেড মোডের মতোই একইভাবে কাজ করে - শুধুমাত্র টেক্সটযুক্ত পণ্যের ডেটা স্ক্র্যাপ করার সময় Chrome প্রেফারেন্সের মাধ্যমে ইমেজ রেন্ডারিং নিষ্ক্রিয় করুন
- অরফ্যান বা বিচ্ছিন্ন Chromium প্রসেস রোধ করতে সর্বদা আপনার ড্রাইভারকে একটি
try / finally: driver.quit()ব্লকে রাখুন
ধাপে ধাপে
- 1
selenium-wire ইনস্টল করুন
আপনার Python ভার্চুয়াল এনভায়রনমেন্টে
pip install selenium-wireচালান। - 2
আপনার VinaProxy প্রক্সি ডিকশনারি নির্ধারণ করুন
আপনার ক্রেডেনশিয়াল
sw_options = {'proxy': {'http': 'http://user:pass@ip:port', 'https': 'http://user:pass@ip:port'}}হিসেবে ফরম্যাট করুন। - 3
seleniumwire_options সহ webdriver.Chrome চালু করুন
driver = webdriver.Chrome(seleniumwire_options=sw_options)ইনিশিয়ালাইজ করুন। - 4
এক্সিট IP অ্যাড্রেস যাচাই করুন
driver.get('https://vinaproxy.com/api/my-ip')-এ যান এবং নিশ্চিত করুন যে JSON রেসপন্সে আপনার প্রক্সি IP দেখাচ্ছে।
সচরাচর জিজ্ঞাসিত প্রশ্নাবলী
ChromeOptions-এ `--proxy-server=http://user:pass@ip:port` কাজ করে না কেন?
Chromium কমান্ড-লাইন --proxy-server ফ্ল্যাগ থেকে ইচ্ছাকৃতভাবেই user:pass@ বাদ দেয়। selenium-wire, একটি onAuthRequired এক্সটেনশন, বা Playwright ব্যবহার করলে এটি চমৎকারভাবে সমাধান হয়।
আমি কি selenium-wire-এ Chrome রিস্টার্ট না করেই প্রক্সি পরিবর্তন করতে পারি?
হ্যাঁ। যেকোনো সময় সক্রিয় আপস্ট্রিম প্রক্সি তাৎক্ষণিকভাবে পরিবর্তন করতে driver.proxy = {'http': 'http://...', 'https': 'http://...'}-এ একটি নতুন ডিকশনারি অ্যাসাইন করুন।
Chrome প্রক্সি এক্সটেনশনগুলো কি হেডলেস মোডে কাজ করে?
হ্যাঁ, যদি আপনি পুরোনো --headless ফ্ল্যাগের পরিবর্তে --headless=new পাস করেন।
আনমিটারড স্ট্যাটিক IP দিয়ে স্কেলে Selenium WebDriver চালান
7টি দেশ জুড়ে তাৎক্ষণিক ডেডিকেটেড IPv4 এবং স্ট্যাটিক ISP প্রক্সি।
Selenium প্রক্সি কিনুন