Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

RoboBrowser BadRequestKeyError(key)

I am trying to sign in to a website using RoboBrowser and I am stuck with a error message.

My code:

from robobrowser import RoboBrowser

browser = RoboBrowser()

def login():
    browser.open('https://www.kijiji.ca/t-login.html')
    form = browser.get_form(id="login-form")
    form.fields["LoginEmailOrNickname"].value = "an_email_address"
    form.fields["login-password"].value = "a_password"
    form.fields["login-rememberMe"].value = "true"
    browser.submit_form(form)

login()  

The error message:

  Traceback (most recent call last):
  File "/home/rojaslee/Desktop/kijiji_poster/kijiji_poster.py", line 16, in <module>
    login()
  File "/home/rojaslee/Desktop/kijiji_poster/kijiji_poster.py", line 11, in login
    form.fields["LoginEmailOrNickname"].value = ["an_email_address"]
  File "/usr/local/lib/python3.4/dist-packages/werkzeug/datastructures.py", line 744, in __getitem__
    raise exceptions.BadRequestKeyError(key)
    werkzeug.exceptions.BadRequestKeyError: 400: Bad Request
like image 246
RojasRod Avatar asked Mar 03 '26 14:03

RojasRod


1 Answers

Old thread, but I've been struggling with the same problem. This worked for me:

from robobrowser import Robobrowser

browser = RoboBrowser

def login():
    browser.open('https://www.kijiji.ca/t-login.html')
    form = browser.get_form(id="login-form")
    form["EmailOrNickname"].value = "an_email_address"
    form["password"].value = "a_password"
    form["rememberMe"].value = "checked"
    browser.submit_form(form)
like image 90
dsugasa Avatar answered Mar 06 '26 03:03

dsugasa



Donate For Us

If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!