6

I want to login to a https web page using Splinter. However, it seems that cookies are not set when I login. Here is my code:

from splinter import Browser
import time

username = 'blabla'
password = 'blabla'

with Browser('chrome') as browser:
    browser.visit("https://the.login.page")

    browser.fill('p_username', username)
    browser.fill('p_password', password)
    browser.find_by_css('.button').first.click()

    time.sleep(2)

    browser.visit('https://other.page.after.login')

I get to the other page, but I am not logged in.

  • browser.cookies.all() is not empty, and it correctly contains my SESSIONID value. But...
  • document.cookie (in the browser console) is empty.

Am I doing something wrong?


I also tried using selenium and I get the same result:

from selenium import webdriver
from selenium.webdriver.common.keys import Keys

username = 'blabla'
password = 'blabla'

browser = webdriver.Chrome()
browser.get('https://the.login.page')
time.sleep(2)

username_field = browser.find_element_by_name("p_username")
password_field = browser.find_element_by_name("p_password")
username_field.send_keys(username)
password_field.send_keys(password)

login_attempt = browser.find_element_by_xpath("//*[@type='submit']")
login_attempt.submit()
time.sleep(2)
browser.get('https://other.page.after.login')
Kurt Bourbaki
  • 11,984
  • 6
  • 35
  • 53

0 Answers0