E Proxy fir Python webdriver-manager-Downloads konfiguréieren
Gitt Python webdriver-manager en proxybewossten HttpClient iwwer WDMDownloadManager, ier den zréckginnene driver path benotzt gëtt.
Dem Chrome säin --proxy-server-Argument gëllt eréischt nodeems de Browser gestart ass. webdriver-manager kann éischter e Proxy brauchen, wärend en en kompatibelen Treiber sicht an d'Archiv dovun eroflued.
import requests
from webdriver_manager.chrome import ChromeDriverManager
from webdriver_manager.core.download_manager import WDMDownloadManager
from webdriver_manager.core.http import HttpClient
class ProxyHttpClient(HttpClient):
def __init__(self, session):
self.session = session
def get(self, url, params=None, **kwargs):
kwargs.setdefault('timeout', 30)
response = self.session.get(url, params=params, **kwargs)
self.validate_response(response)
return response
with requests.Session() as session:
session.trust_env = False
session.proxies.update({
'http': 'http://proxy.example:8080',
'https': 'http://proxy.example:8080',
})
downloader = WDMDownloadManager(ProxyHttpClient(session))
driver_path = ChromeDriverManager(download_manager=downloader).install()
Dës Fragment geet vun de bestoenden Ofhängegkeete webdriver-manager a Requests aus. De gewielten Proxy-Listener ass HTTP fir béid Zilschemata. Fir erlaabten ëffentlechen Treiber-Downloads liwwert d'HTTP-Proxy-Lëscht Kandidaten fir d'Proxy-URLen vun der Sëtzung. Halt d'Session lieweg, bis d'Installatioun oder d'Cache-Sich vum Manager fäerdeg ass, a gitt duerno driver_path un déi üblech Selenium-Service-Ariichtung vun der Applikatioun.
Déi personaliséiert get-Method akzeptéiert dem Manager seng zousätzlech HTTP-Argumenter a behält d'Validatioun vun der Äntwert. D'Proxy-Wiel gehéiert zum Download-Client; konfiguréier Chrome separat, wann d'Navigatioun och e Proxy brauch.
trust_env=False mécht d'Konfiguratioun vun dëser Sëtzung explizit, dorënner d'Deaktivéiere vun der Ëmwelt-ofgeleet CA-Bundle-Wiel. Wann den Downloadwee eng Organisatiouns-CA brauch, gëff de virgesinnene Bundle an der verify-Astellung vun dëser Sëtzung un a behalt d'Zertifikatskontrollen.