Как открыть сессию с помощью requests В БРАУЗЕРЕ. Авторизация происходит, но если зайти на сайт через браузер, создается новая неавторизованная сессия

def linkTest():

    url = 'https://test.ru/private/login'
    login = 'login'
    passwd = 'passwd'

    ### открытие сессии ###
    session = requests.Session()
    before_request = session.get(url)
    #### debug #########
    with open("before_request .html", "wb") as file:
        file.write(before_request .content)
    
    ### авторизация ###    
    session.auth = (login, passwd)
    after_request = session.get(url)   
    #### debug #########
    with open("after_request.html", "wb") as file:
        file.write(after_request.content)
    
    subprocess.Popen(r'C:\Program Files (x86)\Microsoft\Edge\Application\msedge.exe /open, https://test.ru/private/')

Ответы (1 шт):

Автор решения: eri
from selenium import webdriver
from selenium.webdriver.chrome.options import Options
from selenium.webdriver.chrome.service import Service
from webdriver_manager.chrome import ChromeDriverManager
from selenium.webdriver.common.by import By
import selenium.common.exceptions

def open_with_selenium_fullscreen(uri,login,password):

    options = Options()

    args =  [
            '--user-data-dir=.Kiosk-profile',
            '--chrome-frame',
            '--disable-infobars',
            '--disable-experimental-fullscreen-exit-ui',
            '--disable-fre',
            '--no-default-browser-check',
            '--no-first-run',
        ]


    for o in args:
        options.add_argument(o)

    prefs = {

    }

    options.add_experimental_option("prefs",prefs)
    options.add_experimental_option("excludeSwitches", ['enable-automation'])
    driver = webdriver.Chrome(service=Service(ChromeDriverManager().install(), env=my_env), options=options)

    driver.get(url=uri)

    driver.find_element(By.CSS_SELECTOR,"input[name='login']").send_keys(login)
    driver.find_element(By.CSS_SELECTOR,"input[name='password']").send_keys(password)
    driver.find_element(By.CSS_SELECTOR,"button[type=submit]").click()

    my_env = os.environ.copy()
    options = Options()

    args =  [
            '--user-data-dir=.Kiosk-profile',
            '--chrome-frame',
            '--disable-infobars',
            '--disable-experimental-fullscreen-exit-ui',
            '--disable-fre',
            '--no-default-browser-check',
            '--no-first-run',
        ]


    for o in args:
        options.add_argument(o)

    prefs = {

    }

    options.add_experimental_option("prefs",prefs)
    options.add_experimental_option("excludeSwitches", ['enable-automation'])
    driver = webdriver.Chrome(service=Service(ChromeDriverManager().install(), env=my_env), options=options)

    driver.get(url=uri)

    driver.find_element(By.CSS_SELECTOR,"input[name='login']").send_keys(login)
    driver.find_element(By.CSS_SELECTOR,"input[name='password']").send_keys(password)
    driver.find_element(By.CSS_SELECTOR,"button[type=submit]").click()
→ Ссылка