也有这个问题。我的解决方案是创建Chrome扩展,并在启动时将其添加到Chrome。
- 在一些新的文件夹中创建两个文件:
background.js(更改用户和路径与yourth)
chrome.webRequest.onAuthRequired.addListener(
function(details, callbackFn) {
console.log("onAuthRequired!", details, callbackFn);
callbackFn({
authCredentials: {username: "user", password: "pass"}
});
},
{urls: ["<all_urls>"]},
['asyncBlocking']
);
的manifest.json
{
"manifest_version": 2,
"name": "Authentication for tests",
"version": "1.0.0",
"permissions": ["<all_urls>", "webRequest", "webRequestBlocking"],
"background": {
"scripts": ["background.js"]
}
}
收拾他们到CRX(铬://扩展/ - >包扩展名)
添加文件到项目
添加到conf.js:
作为第一线
var fs = require('fs');
const ext64 = fs.readFileSync('./ext.crx', 'base64');
exports.config = {
...
和Chrome浏览器选项
capabilities: {
browserName: 'chrome',
chromeOptions: {
args: ['--no-sandbox'],
extensions: [ext64]
}
},
[Chrome 59和基本身份验证使用Selenium/Fluentlenium]的可能重复(https://stackoverflow.com/questions/44542740/chrome-59-and-basic-authentication-with-selenium-fluentlenium) –