2017-05-02 4 views
1

Ich versuche, Daten aus Excel-Blatt zu importieren und übergeben Sie als Parameter zu Python-Skript, wo ich auch versuche, den "Browser" auch als Parameter aus der Excel-Datei zu nehmen. Unten sind die Details.Übergabe Parameter zu Webdriver anstelle von Treiber

Der Browser wird in "B2" Zelle der Excel-Tabelle angegeben:

enter image description here

Workbook Name: Data.xlsx

Blattname: Konfiguration

from selenium import webdriver 
from selenium.webdriver.common.keys import Keys 
from selenium.webdriver.support.expected_conditions import alert_is_present 
import openpyxl 

wb=openpyxl.load_workbook('Data.xlsx') 
config=wb.get_sheet_by_name('Configuration') 
'''b1=config["B2"].value''' 
url=config["B3"].value 
uid=config['B4'].value 
pwd=config['B5'].value 
Browser=webdriver.config['B2'].value() 
'''in the above deceleration I am trying to pass the value from excel sheet, instead of writing the value directly. So from next time on wards, I can update in excel sheet with the required browser''' 

class Actions(): 
    def OpenApplication(): 
     Browser.get(url) 
+0

könnte es sein, dass Ihr Excel B2-Wert kein näheres "()" hat. –

Antwort

0

Ich denke, Das liegt daran, dass das Erstellen des Webdrivers einen näheren Zweck erfordert, aber Sie versuchen, eine Zeichenfolge am Ende von webdriver ohne einen näheren Punkt zu setzen (näher sind die Klammern "()" am Ende). versuchen Sie mit dieser if Anweisung.

wb=openpyxl.load_workbook('Data.xlsx') 
config=wb.get_sheet_by_name('Configuration') 
b1=config["B2"].value 

if b1 == 'Chrome': 
    Browser = webdriver.Chrome() 
elif b1 == 'Firefox': 
    Browser = webdriver.Firefox() 
elif b1 == 'IE': 
    Browser = webdriver.Ie() 
+1

versucht die obige Anweisung direkt Fehler verursacht, so habe ich unten verwendet und funktioniert. Danke für den Tipp ... wb = openpyxl.load_workbook ('Data.xlsx') config = wb.get_sheet_by_name ('Konfiguration') b1 = config [ "B2"]. Wert wenn b1 ==‘ Chrome ': Browser = webdriver.Chrome() elif b1 ==' Firefox ': Browser = webdriver.Firefox() elif b1 ==' IE ': Browser = webdriver.Ie() – Sriniwaas

+0

das ist eine gute Nachricht! Ich werde meine Antwort aktualisieren, um Ihre Kommentare zu reflektieren –

+0

Ich sehe meinen Fehler, ich habe 'value()' anstelle von 'value'. Ich denke, die Antwort ist jetzt gut –

Verwandte Themen