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 სესიის შექმნისას თუ ვებსაიტზე ნავიგაციისას. ორივე წარუმატებლობა შეიძლება სხვადასხვა ქსელურ კლიენტსა და სხვადასხვა პროქსი პოლიტიკას ეხებოდეს.

დაკავშირებული სტატიები