پروکسی را به‌عنوان قابلیت نشست مرورگر پیش از driver$open() عرضه کنید، در استقرار RSelenium که سرور WebDriver آن پروتکل نشست را می‌پذیرد:

browser_proxy <- list(
  proxyType = 'manual',
  httpProxy = 'proxy.example:8080',
  sslProxy = 'proxy.example:8080'
)

driver <- RSelenium::remoteDriver(
  remoteServerAddr = 'webdriver.example',
  port = 4444L,
  browserName = 'chrome',
  extraCapabilities = list(proxy = browser_proxy)
)
driver$open()

remoteServerAddr سرویس WebDriver را مشخص می‌کند. قابلیت توصیف می‌کند که مرورگر بعد از آن به کجا می‌رود. تنظیم پروکسی HTTP در R به‌تنهایی آن مسیر مرورگر را پیکربندی نمی‌کند.

از host:port در httpProxy و sslProxy استفاده کنید. دومی مقصدهای HTTPS را انتخاب می‌کند؛ به معنای شنونده پروکسی محافظت‌شده با TLS نیست. یک نامزد HTTP عمومی از فهرست پروکسی HTTP میزبان و درگاهی برای این فیلدها فراهم می‌کند، به شرطی که میزبان مرورگر بتواند به آن برسد.

کدام شکست اول رخ داد؟

اگر باز شدن نشست رد شد، پیش از تغییر نقطه پایانی پروکسی سازگاری پروتکل را بررسی کنید. منبع remoteDriver در RSelenium desiredCapabilities قدیمی را ارسال می‌کند؛ هر سرور WebDriver کنونی می‌تواند آن قالب را پیش از آنکه مرورگری برای آزمودن مسیر وجود داشته باشد رد کند.

اگر نشست باز می‌شود اما ناوبری شکست می‌خورد، دسترسی‌پذیری را از میزبان واقعی مرورگر بررسی کنید. برای یک کانتینر یا گره Grid، localhost یعنی همان گره، نه ایستگاه کاری R.

مقالات مرتبط