ଏକ JavaScript Selenium ସ୍କ୍ରିପ୍ଟ ସେହି ସର୍ଭରର ବ୍ରାଉଜର କେଉଁଠି ଯିବା ପୂର୍ବରୁ ରିମୋଟ ସର୍ଭରକୁ WebDriver କମାଣ୍ଡ ପଠାଏ। ଯଦି କମାଣ୍ଡ ସଂଯୋଗ HTTP ପ୍ରକ୍ସି ଦେଇ ଯିବାକୁ ପଡ଼େ, Builder ର WebDriver ପ୍ରକ୍ସି କନଫିଗର କରନ୍ତୁ:

const { Builder, Browser } = require("selenium-webdriver");

const driver = await new Builder()
  .forBrowser(Browser.CHROME)
  .usingServer(gridUrl)
  .usingWebDriverProxy("http://proxy.example.net:8080")
  .build();

gridUrl ହେଉଛି ପ୍ରକୃତ Selenium ସର୍ଭର କିମ୍ବା ହୋଷ୍ଟ କରାଯାଇଥିବା WebDriver ଏଣ୍ଡପଏଣ୍ଟ। ସେହି ପଥ ଅନୁମତିପ୍ରାପ୍ତ ଥିବା ସର୍ବସାଧାରଣରେ ପହଞ୍ଚିବାଯୋଗ୍ୟ ଏଣ୍ଡପଏଣ୍ଟ ପାଇଁ HTTP ପ୍ରକ୍ସି ତାଲିକା usingWebDriverProxy ପାଇଁ ପ୍ରାର୍ଥୀ ଯୋଗାଏ। ଏହି ଖଣ୍ଡକୁ async CommonJS ଫଙ୍କସନ ଭିତରେ ଚଲାନ୍ତୁ। ପରୀକ୍ଷା ସେସନ ସମାପ୍ତ ହେଲେ driver ବନ୍ଦ କରନ୍ତୁ।

usingWebDriverProxy JavaScript ବାଇଣ୍ଡିଂର HTTP ସଂଯୋଗ ନିୟନ୍ତ୍ରଣ କରେ। ଏହା Chrome ର ପ୍ରକ୍ସି ସାମର୍ଥ୍ୟ କିମ୍ବା Chrome ଆରମ୍ଭ ଆର୍ଗୁମେଣ୍ଟ ସେଟ କରେ ନାହିଁ।

ଯଦି ବ୍ରାଉଜର ଟ୍ରାଫିକର ମଧ୍ୟ ଏକ ମଧ୍ୟସ୍ଥ ଆବଶ୍ୟକ ହୁଏ, ଇଚ୍ଛିତ Chrome ବିକଳ୍ପଗୁଡ଼ିକ ଅଲଗା ଭାବରେ ଦିଅନ୍ତୁ। ସେହି ବ୍ରାଉଜର ରିମୋଟ ମେସିନରେ ଚାଲେ, ତେଣୁ ଏହାର ପ୍ରକ୍ସି ଏଣ୍ଡପଏଣ୍ଟ ସେଠାରେ ପହଞ୍ଚିବାଯୋଗ୍ୟ ହେବା ଆବଶ୍ୟକ। ସ୍କ୍ରିପ୍ଟର ମେସିନରେ ଥିବା loopback ଠିକଣା ସ୍ୱତଃ ରିମୋଟ ବ୍ରାଉଜର ପାଇଁ ଉପଲବ୍ଧ loopback ସେବା ନୁହେଁ।

ବିଫଳତା WebDriver ସେସନ ସୃଷ୍ଟି କରିବା ସମୟରେ ଘଟୁଛି କି ୱେବସାଇଟ ନେଭିଗେଟ କରିବା ସମୟରେ, ତାହା ଚିହ୍ନଟ କରନ୍ତୁ। ଦୁଇଟି ବିଫଳତାରେ ଭିନ୍ନ ନେଟୱର୍କ କ୍ଲାଏଣ୍ଟ ଏବଂ ଭିନ୍ନ ପ୍ରକ୍ସି ନୀତି ସଂଶ୍ଳିଷ୍ଟ ହୋଇପାରେ।

ସମ୍ପର୍କିତ ପ୍ରବନ୍ଧ