TransWikia.com

Не сохраняются cookie в php-webdriver

Stack Overflow на русском Asked by VaDoSiQ on December 31, 2020

Такая проблема. Нужно авторизоваться на N сайте, сохранить данные cookies в профиль и после успешной авторизации работать уже посредственно с данными в профиле (cookie). Но по какой то причине, профили создаются, авторизация происходит, но после того как я прошел авторизацию, я убираю код непосредственно с данными для входа, меняю url с авторизации на url где только авторизованные могут быть, меня выкидывает вновь на авторизацию.

<?php

use FacebookWebDriverRemoteDesiredCapabilities;
use FacebookWebDriverRemoteRemoteWebDriver;
use FacebookWebDriverRemoteDriverCommand;
use FacebookWebDriverRemoteRemoteWebElement;
use FacebookWebDriverWebDriverExpectedCondition;
use FacebookWebDriverWebDriverBy;
use FacebookWebDriverChromeChromeOptions;

$options = new ChromeOptions();
$options->addArguments([
    '--user-data-dir=/profiles/profile-1',
    '--ignore-certificate-errors',
    '--headless',
    '--user-agent=Mozilla/5.0 (Android 6.0; Mobile; rv:68.0) Gecko/20100101 Firefox/68.0',
    '--lang=ru',
]);

$capabilities = DesiredCapabilities::chrome();
$capabilities->setCapability(ChromeOptions::CAPABILITY, $options);

$chrome = RemoteWebDriver::create('http://localhost:4444/wd/hub', $capabilities);
$chrome->get('https://example.com');

$chrome->findElement(WebDriverBy::cssSelector('[name="username"]'))->sendKeys('username');
$chrome->findElement(WebDriverBy::cssSelector('[name="password"]'))->sendKeys('password');
$chrome->findElement(WebDriverBy::cssSelector('[name="submit"]'))->click();

echo $chrome->getCurrentURL();

$chrome->quit();

Return https://example.com/dashboard

<?php

use FacebookWebDriverRemoteDesiredCapabilities;
use FacebookWebDriverRemoteRemoteWebDriver;
use FacebookWebDriverRemoteDriverCommand;
use FacebookWebDriverRemoteRemoteWebElement;
use FacebookWebDriverWebDriverExpectedCondition;
use FacebookWebDriverWebDriverBy;
use FacebookWebDriverChromeChromeOptions;

$options = new ChromeOptions();
$options->addArguments([
    '--user-data-dir=/profiles/profile-1',
    '--ignore-certificate-errors',
    '--headless',
    '--user-agent=Mozilla/5.0 (Android 6.0; Mobile; rv:68.0) Gecko/20100101 Firefox/68.0',
    '--lang=ru',
]);

$capabilities = DesiredCapabilities::chrome();
$capabilities->setCapability(ChromeOptions::CAPABILITY, $options);

$chrome = RemoteWebDriver::create('http://localhost:4444/wd/hub', $capabilities);
$chrome->get('https://example.com/dashboard');

echo $chrome->getCurrentURL();

$chrome->quit();

Return https://example.com/account/sign-in

Подскажите в какую сторону копать, уже 3 день не могу победить эту проблему.

Версия Chrome driver: 84.0.4147

Add your own answers!

Ask a Question

Get help from others!

© 2024 TransWikia.com. All rights reserved. Sites we Love: PCI Database, UKBizDB, Menu Kuliner, Sharing RPP