Home >Java >javaTutorial >How to Handle Basic Authentication in Selenium without Embedding Credentials in the URL?

How to Handle Basic Authentication in Selenium without Embedding Credentials in the URL?

Mary-Kate Olsen
Mary-Kate OlsenOriginal
2024-12-29 12:42:14762browse

How to Handle Basic Authentication in Selenium without Embedding Credentials in the URL?

Handling Basic Authentication in Selenium without URL Credentials

When attempting basic authentication using Selenium, the provided code snippet using embedded credentials in the URL can no longer be used due to the deprecated support in Google Chrome. However, there are alternative approaches available.

Accessing Domain

One option is to split the authentication process into two steps:

driver.get("http://admin:admin@localhost:8080");
driver.get("http://localhost:8080/project");

This separating authentication from accessing the resource can still work effectively.

Chrome Extension

Another method involves creating a Chrome extension that automatically sets the required credentials. This requires creating a zip file containing the extension's code, which can be added to the ChromeOptions:

options = webdriver.ChromeOptions()
options.add_extension(r'C:\dev\credentials.zip')

A sample extension can be found at https://gist.github.com/florentbr/25246cd9337cebc07e2bbb0b9bf0de46.

The above is the detailed content of How to Handle Basic Authentication in Selenium without Embedding Credentials in the URL?. For more information, please follow other related articles on the PHP Chinese website!

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn