Yadda ake saita proxy mai buƙatar tantancewa a Selenium WebDriver
Updated:
Alamar --proxy-server=http://ip:port ta ChromeDriver tana share bayanan sirri na user:pass kuma tana fito da akwatin shiga da ke toshe aiki. Domin amfani da proxies na HTTP(S) masu buƙatar tantancewa na VinaProxy cikin sauƙi a Selenium, tura bayanan sirrinka ta selenium-wire ko kuma loda ƙaramar Chrome onAuthRequired background extension.
http://user:pass@ip:port (selenium-wire / Chrome proxy extension)- IP 1₫ 40,000
- IPs 5+₫ 35,000
- IPs 10+₫ 25,000
- IPs 20+₫ 25,000
- IPs 50+₫ 25,000
- IPs 100+₫ 25,000
- IPs 200+₫ 25,000
- IPs 500+₫ 25,000
- IPs 1000+₫ 22,000
- IPs 2000+₫ 20,000
- IP 1₫ 75,000
- IPs 3+₫ 70,000
- IPs 5+₫ 65,000
- IPs 10+₫ 60,000
- IPs 50+₫ 60,000
- IPs 100+₫ 60,000
- IPs 200+₫ 60,000
- IPs 500+₫ 55,000
Hanyoyi biyu masu inganci don tantance proxies a Selenium
Zaɓi hanyar da ta dace da yaren shirye-shiryenka da browser driver ɗinka:
| Hanya | Tsarin Saiti | Ya Fi Kyau Ga |
|---|---|---|
selenium-wire (Python) | seleniumwire_options={'proxy': {'http': 'http://user:pass@ip:port', 'https': 'http://user:pass@ip:port'}} | Saitin Python mafi sauri; yana goyon bayan sauya proxies nan take a tsakiyar zama |
| Chrome Auth Extension | Loda zip extension da ke kula da chrome.webRequest.onAuthRequired | Daidaitaccen Selenium a faɗin Python, Java, C#, da kuma undetected-chromedriver |
| Migrate to Playwright | browser.newContext({ proxy: { server, username, password } }) | Tantance proxy kai tsaye a kowane mahallin ba tare da buƙatar wani extension ba |
Shawarwari don inganta aikin Selenium scraping ta hanyar proxies
- Saita
options.page_load_strategy = 'eager'domin WebDriver ya fara aiki da zaran DOM ya shirya ba tare da jiran na'urorin bibiya na waje masu jinkiri ba - Yi amfani da
--headless=new(Chrome 109+) idan kana aiki a yanayin headless domin Chrome extensions da tantance proxy su yi aiki daidai kamar a yanayin headed - Kashe nuna hotuna ta saitunan Chrome lokacin da kake scraping na bayanan samfur masu rubutu kawai
- Koyaushe sanya driver ɗinka a cikin tsarin
try / finally: driver.quit()don hana barin ayyukan Chromium a buɗe
Mataki-mataki
- 1
Shigar da selenium-wire
Gudanar da
pip install selenium-wirea cikin virtual environment na Python ɗinka. - 2
Siffanta dictionary na proxy na VinaProxy
Tsara bayanan sirrinka a matsayin
sw_options = {'proxy': {'http': 'http://user:pass@ip:port', 'https': 'http://user:pass@ip:port'}}. - 3
Ƙaddamar da webdriver.Chrome tare da seleniumwire_options
Fara da
driver = webdriver.Chrome(seleniumwire_options=sw_options). - 4
Tabbatar da adireshin IP na fita
Je zuwa
driver.get('https://vinaproxy.com/api/my-ip')kuma ka tabbatar da cewa amsar JSON tana nuna IP na proxy ɗinka.
Tambayoyin da aka fi yi
Me ya sa `--proxy-server=http://user:pass@ip:port` ba ya aiki a ChromeOptions?
Chromium yana cire user:pass@ da gangan daga alamar layin umarni ta --proxy-server. Yin amfani da selenium-wire, wani extension na onAuthRequired, ko Playwright yana magance wannan matsalar cikin sauƙi.
Zan iya sauya proxies ba tare da sake kunna Chrome a selenium-wire ba?
Ee. Sanya sabon dictionary zuwa driver.proxy = {'http': 'http://...', 'https': 'http://...'} a kowane lokaci don sauya babban proxy mai aiki nan take.
Shin extensions na proxy na Chrome suna aiki a yanayin headless?
Ee, matuƙar ka sanya --headless=new a maimakon tsohuwar alamar --headless.
Gudanar da Selenium WebDriver a babban sikelin tare da static IPs marasa iyaka
Dedicated IPv4 da Static ISP proxies na nan take a faɗin ƙasashe 7.
Sayi Proxies na Selenium