څنګه په 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+ IPs₫ ۳۵٬۰۰۰
- 10+ IPs₫ ۲۵٬۰۰۰
- 20+ IPs₫ ۲۵٬۰۰۰
- 50+ IPs₫ ۲۵٬۰۰۰
- 100+ IPs₫ ۲۵٬۰۰۰
- 200+ IPs₫ ۲۵٬۰۰۰
- 500+ IPs₫ ۲۵٬۰۰۰
- 1000+ IPs₫ ۲۲٬۰۰۰
- 2000+ IPs₫ ۲۰٬۰۰۰
- 1 IP₫ ۷۵٬۰۰۰
- 3+ IPs₫ ۷۰٬۰۰۰
- 5+ IPs₫ ۶۵٬۰۰۰
- 10+ IPs₫ ۶۰٬۰۰۰
- 50+ IPs₫ ۶۰٬۰۰۰
- 100+ IPs₫ ۶۰٬۰۰۰
- 200+ IPs₫ ۶۰٬۰۰۰
- 500+ IPs₫ ۵۵٬۰۰۰
په 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'وټاکئ ترڅو WebDriver د سست دریمګړو ټریکرانو ته له انتظار پرته سمدلاسه هغه وخت تعامل وکړي کله چې DOM فعال شي- که بې مخه (headless) چلښت کوئ نو
--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://...'} ته نوې ډکشنري وټاکئ ترڅو فعال پورته خوا (upstream) پراکسي په فوري توګه بدله شي.
ایا د Chrome پراکسي اکسټینشنونه په بې مخه (headless) موډ کې کار کوي؟
هو، تر هغه وخته چې تاسو د پخواني --headless بیرغ پر ځای --headless=new واستوئ.
Selenium WebDriver په لویه کچه د نامحدودو سټاټیک IP ګانو سره پرمخ یوسئ
په 7 هیوادونو کې سمدستي وقف شوي IPv4 او سټاټیک ISP پراکسیان.
د Selenium پراکسیان واخلئ