C# RemoteWebDriver-ന് അതിന്റെ കമാൻഡുകൾക്കായി ഒരു പ്രോക്സി ഉണ്ട്
ദൂരവ്യാപക Selenium സെഷൻ സൃഷ്ടിക്കുന്നതിന് മുമ്പ് HttpCommandExecutor-ൽ System.Net.WebProxy സജ്ജമാക്കുക.
C# പരിശോധനാ പ്രക്രിയയ്ക്ക് ദൂരെയുള്ള Selenium സേവനത്തിലെത്താൻ ഒരു ഫോർവേഡ് പ്രോക്സി ആവശ്യമായിരിക്കുമ്പോൾ, അതിന്റെ HTTP കമാൻഡ് എക്സിക്യൂട്ടറിലേക്ക് System.Net.WebProxy ബന്ധിപ്പിക്കുക:
using System;
using System.Net;
using OpenQA.Selenium.Remote;
var commandProxy = new WebProxy("http://proxy.example:8080")
{
Credentials = proxyCredentials
};
var executor = new HttpCommandExecutor(
remoteWebDriverUri, TimeSpan.FromSeconds(60))
{
Proxy = commandProxy
};
using var driver = new RemoteWebDriver(
executor, browserOptions.ToCapabilities());
proxyCredentials ഉദ്ദേശിച്ച പ്രോക്സി അക്കൗണ്ടാണ്, remoteWebDriverUri കോൺഫിഗർ ചെയ്ത ദൂരെയുള്ള സേവനത്തിന്റെ URI ആണ്, browserOptions-ൽ നിലവിലുള്ള ബ്രൗസറിന്റെയും ദാതാവിന്റെയും കഴിവുകൾ ഉണ്ട്. ഇടനിലക്കാരന് പ്രാമാണീകരണം ആവശ്യമില്ലെങ്കിൽ Credentials ഒഴിവാക്കുക. ആ സന്ദർഭത്തിൽ, ദൂരെയുള്ള WebDriver സേവനം പൊതുവായതാണെങ്കിൽ, പൊതു പ്രോക്സി വഴിയുള്ള പ്രവേശനം അനുവദനീയമാണെങ്കിൽ HTTP പ്രോക്സി പട്ടിക സ്ഥാനാർത്ഥികൾ നൽകുന്നു.
RemoteWebDriver നിർമ്മിക്കുന്നതിന് മുമ്പ് എക്സിക്യൂട്ടറിന്റെ പ്രോപ്പർട്ടി സജ്ജമാക്കുക. ഡ്രൈവർ സൃഷ്ടിക്കുന്നത് ദൂരെയുള്ള സെഷൻ കൈമാറ്റം ആരംഭിക്കുന്നു; എക്സിക്യൂട്ടർ അതിന്റെ അടിസ്ഥാന HTTP ക്ലയന്റ് ആദ്യമായി ആവശ്യമാകുമ്പോൾ സൃഷ്ടിക്കുന്നു. പിന്നീട് പ്രോപ്പർട്ടി മാറ്റുന്നത് ആ ക്ലയന്റ് ഇതിനകം ഉപയോഗിക്കുന്ന ഹാൻഡ്ലർ മാറ്റിസ്ഥാപിക്കാനുള്ള വിശ്വസനീയമായ മാർഗ്ഗമല്ല.
ഈ വഴി WebDriver കമാൻഡുകൾ റണ്ണറിൽ നിന്ന് ദൂരെയുള്ള സേവനത്തിലേക്ക് എത്തിക്കുന്നു. ബ്രൗസറിന്റെ സ്വന്തം വെബ്സൈറ്റ് ട്രാഫിക് വേറിട്ട ബന്ധമാണ്. അതിനും പ്രോക്സി വേണമെങ്കിൽ, ബ്രൗസറിന്റെ മെഷീനിൽ നിന്ന് എത്തിച്ചേരാവുന്ന എൻഡ്പോയിന്റ് ഉപയോഗിച്ച് ബ്രൗസർ കഴിവുകളിലൂടെ അത് കോൺഫിഗർ ചെയ്യുക.
പ്രോക്സി ക്രെഡൻഷ്യലുകൾ ഇടനിലക്കാരനിൽ പ്രാമാണീകരിക്കുന്നു. ദൂരെയുള്ള സേവനത്തിന്റെ ക്രെഡൻഷ്യലുകൾ ഇപ്പോഴും ദാതാവ് പിന്തുണയ്ക്കുന്ന ലോഗിൻ അല്ലെങ്കിൽ കഴിവ് കോൺഫിഗറേഷനിൽ ഉൾപ്പെടുന്നു.