Chrome-இன் --proxy-server வாதம் உலாவி தொடங்கிய பிறகே பொருந்தும். webdriver-manager பொருத்தமான இயக்கியைத் தேடி அதன் காப்பகத்தைப் பதிவிறக்கும்போது முன்னதாகவே ப்ராக்ஸி தேவைப்படலாம்.

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()

இந்தப் பகுதி ஏற்கனவே உள்ள webdriver-manager மற்றும் Requests சார்புகளைக் கருதுகிறது. தேர்ந்தெடுக்கப்பட்ட ப்ராக்ஸி கேட்பான் இரு இலக்கு திட்டங்களுக்கும் HTTP ஆகும். அனுமதிக்கப்பட்ட பொது இயக்கி பதிவிறக்கங்களுக்கு HTTP ப்ராக்ஸி பட்டியல் அமர்வின் ப்ராக்ஸி URL-களுக்கு வேட்பாளர்களை வழங்குகிறது. மேலாளரின் நிறுவல் அல்லது தற்காலிக சேமிப்பு தேடல் முடியும் வரை Session-ஐ உயிர்ப்புடன் வைத்திருந்து, பின்னர் driver_path-ஐ பயன்பாட்டின் வழக்கமான Selenium சேவை அமைப்புக்கு அனுப்பவும்.

தனிப்பயன் get முறை மேலாளரின் கூடுதல் HTTP வாதங்களை ஏற்று பதிலின் சரிபார்ப்பைப் பேணுகிறது. ப்ராக்ஸி தேர்வு பதிவிறக்க கிளையண்டுக்கு உரியது; வழிசெலுத்தலுக்கும் ப்ராக்ஸி தேவைப்பட்டால் Chrome-ஐ தனியாக அமைக்கவும்.

trust_env=False இந்த Session-இன் உள்ளமைவை வெளிப்படையாக்குகிறது, சூழலிலிருந்து பெறப்பட்ட CA தொகுப்பு தேர்வை முடக்குவது உட்பட. பதிவிறக்க பாதைக்கு நிறுவன CA தேவைப்பட்டால், சான்றிதழ் சரிபார்ப்புகளைத் தக்கவைத்து இந்த Session-இன் verify அமைப்பில் நோக்கமான தொகுப்பை வழங்கவும்.

தொடர்புடைய கட்டுரைகள்