Есть отличная удаленная работа для php+codeception+jenkins+allure+docker спецов. 100% remote! Присоединиться к проекту

После перехода на страницу нужно в консоли браузера прописать cookie

python
Теги: #<Tag:0x00007f7b651f14a8>

(Андрей Петров) #1

Есть код:

перехожу на страницу в баузере

wd.get(“https://test.com.ua/”)

после чего, мне нужно перейти на мобильную версию, и я делаю проверку, если кнопка есть, то нажимаю, если нет, то не нажимаю
if (wd.find_elements_by_css_selector(".mobile-version")):
wd.find_element_by_css_selector(".mobile-version").click()

Подскажите, пожалуйста, после перехода на страницу мобильной версии в консоли браузера нужно выполнить:

document.cookie=’_uz_emu_on=on; path=/; expires=Sun, 01-Jan-2045 00:00:00 GMT’


(Дмитрий Еремин) #2

Если хотите вызвать js-код, то

Или вы хотите прописать куки?
тогда https://docs.seleniumhq.org/docs/03_webdriver.jsp#cookies


(Андрей Петров) #3

А я совсем в другую степь копал, мне сказали, что нужно прописать куки, и у меня ничего не выходило.
Вызов js-кода помог, спасибо большое.


(Vatslau) #4

Зачем в консоли?


def cookies_save():
    chrome_options = Options()
    chrome_options.add_argument("--headless")
    driver = selenium.webdriver.Chrome(executable_path=CHROME_DRIVER, options=chrome_options)

    driver.get("http://www.google.com")
    cookies = pickle.dump(driver.get_cookies(), open("temp/cookies.pkl", "wb"))
    print(driver.get_cookies().__repr__())
    return cookies


def cookies_load():
    chrome_options = Options()
    chrome_options.add_argument("--headless")
    driver = selenium.webdriver.Chrome(executable_path=CHROME_DRIVER, options=chrome_options)

    driver.get("http://www.google.com")
    cookies = pickle.load(open("temp/cookies.pkl", "rb"))
    print(cookies)

    for cookie in cookies:
        driver.add_cookie(cookie)