2017-07-06 13 views
-2

私はWebサイトにログインし、そこから価値を得るRoboBrowserを使用してスクリプトを作成しています変数が定義されていません。しかし、それは

しかし、行27と28では2つの変数が定義されていません。しかし、彼らはそうです。私はまた、グローバルを使用してみましたが、それはうまくいきませんでした

はここに私のコードです:

#!/usr/bin/python 
# -*- coding: utf-8 -*- 

import re 
from robobrowser import RoboBrowser 


def code(): 
    browser = RoboBrowser(history=True, parser='html.parser') 
    input_url = input('Enter login page URL: ') 
    try: 
     browser.open(input_url) 
    except: 
     print 'Error! Url is invalid.' 
     restartCode() 
     return 
    input_form = \ 
     input('Enter html signup form (Leave blank if main form is signup form): ' 
      ) 
    try: 
     form = browser.get_form(input_form) 
    except: 
     print 'Error! Form does not exist or is invalid.' 
     restartCode() 
     return 
    global input_email 
    global input_emailbox 
    input_email = input('Enter username or email: ') 
    input_password = input('Enter password: ') 
    input_emailBox = input('Enter username or email textbox: ') 
    input_passwordBox = input('Enter password textbox: ') 

    # try: 

    print (input_email, input_emailbox) 
    form[input_emailbox] = input_email 

    # except: 
    # print("Error! Email or username textbox is invalid!") 
    # restartCode() 
    # return 

    try: 
     form[input_passwordbox] = input_password 
    except: 
     print 'Error! Password textbox is invalid!' 
     restartCode() 
     return 
    browser.submit_form(form) 


def restartCode(): 
    code() 


code() 
+1

*標準インデント*は4スペースです。そうでなければ読むのは難しいです。また、27行目と28行目がどの行かを完全に記述できるのであれば、いいでしょう。 – heather

+1

'input_emailbox!= input_emailBox' – Jkdc

答えて

0

問題は、あなたがinput_emailbox代わりのinput_emailBoxを使用しています。変数を定義したのとまったく同じ方法で入力すれば、コンピュータは変数を認識します。

関連する問題