CDP کے ذریعے Playwright Java: نئے براؤزر سیاق پر پراکسی مقرر کرنا
Chromium CDP اینڈ پوائنٹ سے جڑیں، پھر پراکسی کے ساتھ سیاق بنائیں؛ کنٹرول کنکشن اور دور دراز براؤزر کے اخراجی راستے کو الگ رکھیں۔
دور دراز براؤزر کے نیٹ ورک کے دو راستے ہوتے ہیں: براؤزر سروس سے Java کا کنٹرول کنکشن، اور ویب سائٹس کی طرف براؤزر کی درخواستیں۔ دوسرے کو اسی سیاق پر مقرر کریں جو آپ بناتے ہیں۔
ایسی Chromium سروس کے لیے جو CDP اینڈ پوائنٹ فراہم کرتی ہے اور نئے سیاق کی اجازت دیتی ہے:
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 کنکشن کو بھی دوبارہ ترتیب نہیں دیتی۔