1. lehetőség: IP-engedélyezési lista (szerverekhez ajánlott)#
A NAT vagy VPN megváltoztathatja az átjáró által látott címet. Jelszó nélküli hozzáférés csak akkor működik, ha a bejegyzést megerősítették a kijelölt szolgáltatáshoz. Külön-külön erősítse meg az ország és a munkamenet beállításait; egy forrás IP engedélyező lista nem küld felhasználónév paramétereket. Fehérlista
from selenium import webdriver
from selenium.webdriver.chrome.options import Options
opts = Options()
opts.add_argument("--proxy-server=http://res.proxy-cyber.com:9000")
opts.add_argument("--headless=new")
driver = webdriver.Chrome(options=opts)
driver.get("https://api.ipify.org")
print(driver.find_element("tag name", "body").text)
driver.quit()2. lehetőség: WebDriver BiDi hitelesítés #
A példa a Selenium által fenntartott WebDriver BiDi API-t használja, enable_bidi és network.add_auth_handler használatával. Mielőtt egy feladatban használnád, tesztelj HTTP proxy kihívást a telepített böngészővel és meghajtóval. A kezelő nem korlátozódik egyetlen hosztra, ezért használjon elszigetelt böngészési munkamenetet független hitelesítési kérések nélkül. Ha a proxy hitelesítés nem támogatott a verziókombinációban, akkor használjon aktivált IP allowlistot.
import os
from selenium import webdriver
from selenium.webdriver.chrome.options import Options
options = Options()
options.enable_bidi = True
options.add_argument("--proxy-server=" + os.environ["PROXY_SERVER"])
with webdriver.Chrome(options=options) as driver:
handler = driver.network.add_auth_handler(
os.environ["PROXY_USER"], os.environ["PROXY_PASSWORD"]
)
try:
driver.get("https://api.ipify.org")
print(driver.find_element("tag name", "body").text)
finally:
driver.network.remove_auth_handler(handler)Firefox#
from selenium import webdriver
from selenium.webdriver.firefox.options import Options
opts = Options()
opts.set_preference("network.proxy.type", 1)
opts.set_preference("network.proxy.http", "res.proxy-cyber.com")
opts.set_preference("network.proxy.http_port", 9000)
opts.set_preference("network.proxy.ssl", "res.proxy-cyber.com")
opts.set_preference("network.proxy.ssl_port", 9000)
opts.set_preference("media.peerconnection.enabled", False) # no WebRTC leak
driver = webdriver.Firefox(options=opts) # whitelisted server, no promptGyakorlati szabályok#
- Használjon külön munkamenet-azonosítót minden független munkafolyamathoz, ha a hozzárendelt átjáró támogatja. A kapcsolat részleteiben ellenőrizze az engedélyezett időtartamot és helyparamétereket. Egy otthoni eszköz a kért időtartam előtt leválhat; egy ragacsos munkamenet nem garantálja, hogy napokig ugyanazt az IP-címet használja. Rögzített cím esetén hasonlítsa össze a dedikált statikus termékeket.
- Használat
--headless=newA Chrome-ban; a régi fej nélküli módnak megkülönböztető ujjlenyomata van. - A különálló munkamenet-azonosítók elkülönítik az útválasztási preferenciákat, nem pedig a böngésző cookie-jait vagy alkalmazás állapotát. Kezdje kis számú dolgozóval, mérje meg a hibákat és a forgalmat, majd fokozatosan növelje a megrendeléshez és a célállomáshoz jóváhagyott korlátokon belül.A szűkebb város- vagy fuvarozóválaszték csökkentheti a rendelkezésre álló kapacitást.
Kérdések, amiket az emberek feltesznek#
Miért jelenít meg a Chrome proxy bejelentkezési kérelmet Seleniummal?
Használjon aktivált forrás-IP engedélyezési listát egy rögzített szerverhez, vagy tesztelje a Selenium jelenlegi WebDriver BiDi hitelesítéskezelőjét a telepített böngészővel.Ne támaszkodjon egy archivált Selenium Wire telepítésre új integrációhoz.