Opcija 1: IP popis dozvoljenih adresa (preporučeno za poslužitelje)#
Pošaljite stvarni odlazni javni IPv4 poslužitelja u Access i pričekajte administratorsku aktivaciju. NAT ili VPN mogu promijeniti adresu koju vidi pristupnik. Pristup bez lozinke funkcionira samo nakon potvrde unosa za dodijeljeni servis. Potvrdite opcije zemlje i sesije odvojeno; izvorišna lista dozvola IP-a ne šalje parametre korisničkog imena. Popis bijelih
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()Opcija 2: WebDriver BiDi provjera autentičnosti #
Primjer koristi Selenium-ov održavani WebDriver BiDi API, s enable_bidi i network.add_auth_handler. Testirajte HTTP proxy izazov s instaliranim preglednikom i upravljačkim programom prije nego što ga upotrijebite u zadatku. Rukovoditelj nije ograničen na jedan host, pa koristite izoliranu sesiju preglednika bez nepovezanih zahtjeva za autentifikaciju. Ako proxy autentikacija nije podržana u vašoj kombinaciji verzije, koristite aktivirani IP allowlist.
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 promptPraktična pravila#
- Koristite različit identifikator sesije za svaki neovisni tijek rada, ako ga dodijeljeni pristupnik podržava. Potvrdite parametre dopuštenog trajanja i lokacije u detaljima veze. Uređaj u kućanstvu može se isključiti prije traženog trajanja; trajna sesija ne jamči isti IP danima. Za fiksnu adresu usporedite namjenski statički proizvod.
- Uporaba
--headless=newU Chromeu; stari način bez glave ima prepoznatljiv otisak prsta. - Zasebni identifikatori sesije izoliraju postavke usmjeravanja, a ne kolačiće preglednika ili stanje aplikacije. Počnite s malim brojem radnika, izmjerite pogreške i promet te postupno povećavajte unutar ograničenja potvrđenih za vašu narudžbu i odredište.Uzak izbor grada ili prijevoznika može smanjiti raspoloživi kapacitet.
Pitanja koja ljudi postavljaju#
Zašto Chrome prikazuje odzivnik za prijavu proxyja s Seleniumom?
Koristite aktivirani izvorni IP dozvoljeni popis za fiksni poslužitelj ili testirajte Seleniumov trenutni WebDriver BiDi autentifikacijski rukovatelj s instaliranim preglednikom.Ne oslanjajte se na arhiviranu instalaciju Selenium Wire-a za novu integraciju.