दूरस्थ ब्राउझरला नेटवर्कचे दोन मार्ग असतात: ब्राउझर सेवेशी Java चे कंट्रोल कनेक्शन, आणि वेबसाइट्सकडे ब्राउझरच्या विनंत्या. दुसरा तुम्ही तयार करत असलेल्या कंटेक्स्टवर सेट करा.

CDP एंडपॉइंट उघड करणाऱ्या आणि नवीन कंटेक्स्टना परवानगी देणाऱ्या Chromium सेवेसाठी:

import com.microsoft.playwright.*;
import com.microsoft.playwright.options.Proxy;

try (Playwright playwright = Playwright.create()) {
    Browser browser = playwright.chromium().connectOverCDP(cdpEndpoint);
    try {
        var options = new Browser.NewContextOptions().setProxy(
            new Proxy("http://proxy.example:8080")
                .setUsername(proxyUser)
                .setPassword(proxyPassword));
        try (BrowserContext context = browser.newContext(options)) {
            context.newPage().navigate("https://www.example.org/");
        }
    } finally {
        browser.close();
    }
}

cdpEndpoint हा ब्राउझर सेवा पुरवत असलेला सध्याचा एंडपॉइंट आहे. त्याचा प्रमाणीकरण टोकन आणि प्रोटोकॉल फॉरवर्ड प्रॉक्सी खात्यापासून स्वतंत्र आहेत.

CDP कनेक्शन फक्त Chromium सोबत चालतात. Playwright प्रोटोकॉलचा एंडपॉइंट त्याऐवजी connect वापरतो; सेवेचा प्रोटोकॉल तपासल्याशिवाय URL प्रत्यय बदलणे विश्वासार्ह रूपांतरण नाही.

प्रॉक्सी दूरस्थ ब्राउझरच्या होस्टवरून पोहोचण्यायोग्य असणे आवश्यक आहे. Java मशीनवरील loopback श्रोता तिथे आपोआप उपलब्ध नसतो. नवीन कंटेक्स्टची सेटिंग आधीपासून असलेला डीफॉल्ट कंटेक्स्ट किंवा Java चे WebSocket कनेक्शनही पुन्हा कॉन्फिगर करत नाही.

संबंधित लेख