2017-02-27 6 views
-1

Dies ist mein erstes Selen-Webdriver-Programm mit Python. Ich muss Werte von Excel erhalten. Hier gebe ich zwei Daten von Excel eins Benutzername und Passwort.Listenzugriff - IndexError: Listenindex außerhalb des Bereichs

Ich bekomme den ersten Wert, aber die Loop-Funktion funktioniert nicht.

Der folgende Code ist mir die Fehlermeldung geben:

IndexError: list index out of range 

Das Skript ist:

def test_Login(self): 
    driver = self.driver 
    driver.get(self.base_url +"/") 
    driver.maximize_window() 
    wb = xlrd.open_workbook('C://Deepak//Test.xlsx') 

    sh1 = wb.sheet_by_index(0) 
    rowcount = sh1.nrows 
    list_rows = [None]*rowcount 

    for n in range(rowcount): 
     list_rows[n] = sh1.cell(n, 0).value 

    driver.find_element_by_name('userName').send_keys(list_rows[0]) 
    driver.find_element_by_name('password').send_keys(list_rows[1]) 
+0

Es ist schwierig, Lösungen anzubieten, wenn die Problemstellung einfach lautet: "Es funktioniert nicht". Bitte [bearbeiten] Sie Ihre Frage, um eine ausführlichere Beschreibung dessen zu geben, was Sie erwartet haben und wie sich das von den tatsächlichen Ergebnissen unterscheidet. Sehen Sie [fragen] nach Hinweisen auf, was eine gute Erklärung macht. –

+0

Schauen Sie sich bitte [Hilfe] an, insbesondere den Link zum Debuggen einfacher Programme. Das Debuggen eigener Programme ist eine Schlüsselqualifikation zum Lernen. Dies ist ein guter Anfang. – JeffC

Antwort

0
for n in range(rowcount): 
    list_rows.append(sh1.cell(n,0).value) 

Ich denke, Ihr Problem list_rows[n] = sh1.cell(n,0).value Verwenden list.append (obj) Liste zu initialisieren ist Elemente.

BEARBEITEN: Die Antwort wurde korrigiert. Vorherige Antwort war falsch.

+0

Nach gegeben Liste = Liste (Karte (str, rowcount), zeigt es einige Syntaxfehler auf For-Schleife, wie kann ich das überwinden. – Deepak

+0

@Deepak Ich habe meine Antwort geändert. Es sollte jetzt funktionieren. –

Verwandte Themen