2017-04-09 6 views
0

Aufruf Wenn ich unten Funktion aus der Python-Datei main.py direkt anrufen, es funktioniert und Firefox zeigt nach oben:Fehler beim Selen durch xlwings

def show_firefox(): 
     webdriver.Firefox(r'c:\firefox_driver') 

Aber als ich versuchte, diese Funktion durch xlwings unter Code aufrufen , Ein AttributeError: Objekt 'Service' hat kein Attribut 'Prozess'.

RunPython ("import main; main.show_firefox()") 

Und ich habe bereits versucht, den Firefox-Treiber zu meinem Win7-Suchpfad zu speichern, aber der Fehler bestand immer noch.

Python 64-Bit 3.5, Selen 3.0.2 und Xlwings 0.10.3 in meinem Projekt verwendet.

Im Folgenden finden Sie die Einstellungen in xlwings:

PYTHON_WIN = ThisWorkbook.Path & "\PythonLib\env\Scripts\pythonw.exe" 
PYTHON_MAC = "" 
PYTHON_FROZEN = "" 
PYTHONPATH = ThisWorkbook.Path & "\PythonLib" 
UDF_MODULES = "" 

Auch ich habe meine PYTHON_WIN auf einen vollständigen Pfad geändert, aber das Problem oben noch existierte.

+0

Problem gelöst, wenn Selen 3.4.3 – luhero

Antwort

0

Sie verwenden wahrscheinlich eine andere Python-Installation, wenn Sie Ihr Skript über RunPython ausführen.

Versuchen Sie, die PYTHON_WIN Einstellung auf den vollständigen Pfad des Interpreters zu setzen und sehen, ob das Problem weiterhin besteht, finden Sie unter: http://docs.xlwings.org/en/stable/vba.html#settings

+0

aktualisiert Wenn Änderung PYTHON_WIN = „“, könnte es normal arbeiten. Es scheint, als ob das Subprozessmodul das falsche Python-env verwendet hat. – luhero