В чем разница между щелчком и отправкой в ​​механизации?

Я пытаюсь войти в Facebook с помощью Mechanize.

Я написал эти два разных сценария для входа в систему:

Сценарий 1

br = Browser()
br.set_handle_robots(False)

userName = 'My EmailID'
password = 'My Password'
response = br.open('https://www.facebook.com/')
if response.code is 200:
    loginForm = br.forms()[0]
    loginForm.set_value(userName, type='email')
    loginForm.set_value(password, type="password")
    response = loginForm.click(label='Log In')

Сценарий 2

br = Browser()
br.set_handle_robots(False)

userName = 'My EmailID'
password = 'My Password'
response = br.open('https://www.facebook.com/')
if response.code is 200:
    br.select_form(nr=0)
    br.set_value(userName, type='email')
    br.set_value(password, type="password")
    response = br.submit()

Второй сценарий зарегистрировал меня в Facebook, но не первым способом.

Несмотря на то, что я нажимаю на правильную кнопку отправки в первом скрипте, почему это не сработало?

1 ответ

Решение

Обновлено: извините за поздний ответ. Вот способ, если вы хотите использовать нажмите:

from mechanize import Browser
br = Browser()
br.set_handle_robots(False)

userName = ''
password = ''
response = br.open('https://www.facebook.com/')
if response.code is 200:
    loginForm = br.forms()[0]
    loginForm.set_value(userName, type='email')
    loginForm.set_value(password, type="password")

    br.select_form(nr=0)
    req = br.click(label='Log In')
    response = br.open(req)
Другие вопросы по тегам