Բացելիս տվեք RSelenium զննարկիչին իր պրոքսին
Օգտագործեք extraCapabilities զննարկիչի երթուղու համար և տարբերեք նստաշրջանի արձանագրության մերժումը պրոքսին չհասնող զննարկիչից։
Տրամադրեք պրոքսին որպես զննարկիչի նստաշրջանի հնարավորություն 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 աշխատանքային կայանը։