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 ਸੇਵਾ ਦੀ ਪਛਾਣ ਕਰਦਾ ਹੈ। ਸਮਰੱਥਾ ਦੱਸਦੀ ਹੈ ਕਿ ਬ੍ਰਾਊਜ਼ਰ ਅੱਗੇ ਕਿੱਥੇ ਜਾਂਦਾ ਹੈ। ਸਿਰਫ਼ R ਵਿੱਚ HTTP ਪ੍ਰੌਕਸੀ ਸੈਟਿੰਗ ਉਸ ਬ੍ਰਾਊਜ਼ਰ ਮਾਰਗ ਨੂੰ ਸੰਰਚਿਤ ਨਹੀਂ ਕਰਦੀ।

host:port httpProxy ਅਤੇ sslProxy ਵਿੱਚ ਵਰਤੋ। ਦੂਜਾ HTTPS ਟਿਕਾਣੇ ਚੁਣਦਾ ਹੈ; ਇਸਦਾ ਮਤਲਬ TLS-ਸੁਰੱਖਿਅਤ ਪ੍ਰੌਕਸੀ ਸਰੋਤਾ ਨਹੀਂ ਹੈ। HTTP ਪ੍ਰੌਕਸੀ ਸੂਚੀ ਤੋਂ ਕੋਈ ਜਨਤਕ HTTP ਉਮੀਦਵਾਰ ਇਹਨਾਂ ਖੇਤਰਾਂ ਲਈ ਹੋਸਟ ਅਤੇ ਪੋਰਟ ਦਿੰਦਾ ਹੈ, ਬਸ਼ਰਤੇ ਬ੍ਰਾਊਜ਼ਰ ਹੋਸਟ ਉੱਥੇ ਪਹੁੰਚ ਸਕੇ।

ਕਿਹੜੀ ਅਸਫਲਤਾ ਪਹਿਲਾਂ ਹੋਈ?

ਜੇ ਸੈਸ਼ਨ ਖੋਲ੍ਹਣਾ ਰੱਦ ਹੁੰਦਾ ਹੈ, ਤਾਂ ਪ੍ਰੌਕਸੀ ਐਂਡਪੌਇੰਟ ਬਦਲਣ ਤੋਂ ਪਹਿਲਾਂ ਪ੍ਰੋਟੋਕੋਲ ਅਨੁਕੂਲਤਾ ਜਾਂਚੋ। RSelenium ਦਾ remoteDriver ਸਰੋਤ ਪੁਰਾਣਾ desiredCapabilities ਭੇਜਦਾ ਹੈ; ਮਾਰਗ ਪਰਖਣ ਲਈ ਬ੍ਰਾਊਜ਼ਰ ਬਣਨ ਤੋਂ ਪਹਿਲਾਂ ਹੀ ਕੋਈ ਵੀ ਮੌਜੂਦਾ WebDriver ਸਰਵਰ ਉਸ ਫਾਰਮੈਟ ਨੂੰ ਰੱਦ ਕਰ ਸਕਦਾ ਹੈ।

ਜੇ ਸੈਸ਼ਨ ਖੁੱਲ੍ਹਦਾ ਹੈ ਪਰ ਨੈਵੀਗੇਸ਼ਨ ਅਸਫਲ ਹੁੰਦਾ ਹੈ, ਤਾਂ ਅਸਲ ਬ੍ਰਾਊਜ਼ਰ ਹੋਸਟ ਤੋਂ ਪਹੁੰਚ ਜਾਂਚੋ। ਕੰਟੇਨਰ ਜਾਂ Grid ਨੋਡ ਲਈ localhost ਦਾ ਮਤਲਬ ਉਹ ਨੋਡ ਹੈ, R ਵਰਕਸਟੇਸ਼ਨ ਨਹੀਂ।

ਸੰਬੰਧਿਤ ਲੇਖ