2016-06-29 5 views
2

Ich arbeite daran, das Wig-Tool in Python zu automatisieren, was die Einbindung einer URL beinhaltet.Benutzereingabe im Unterprozessaufruf?

Derzeit nehme ich Benutzereingaben (eine URL) auf, habe aber Schwierigkeiten, sie zum Ende des Unterprozessaufrufs hinzuzufügen.

Ich weiß, das ist wahrscheinlich eine einfache Frage, aber jede Hilfe wäre willkommen!

+1

eine Liste args Verwenden –

Antwort

2

Führen Sie die Argumente als Liste als @PadraicCunningham schlägt vor:

Liste
args = ['python3','wig.py'] 
args.append(var) 
subprocess.call(args) 

Wenn Ihr Argument bringen Sie kann lang und kompliziert wird in shlex:

import shlex 
args = shlex.split('python3 wig.py {}'.format(var)) 
subprocess.call(args) 
+0

Danke , sehr geschätzt! – arcade16

+0

Ich erhalte eine Fehlermeldung: Traceback (letzter Anruf zuletzt): Datei "automate_wig.py", Zeile 5, in subprocess.call ('python3 wig.py {}'. Format (var)) Datei " /usr/lib/python2.7/subprocess.py ", Zeile 522, im Aufruf return Popen (* popenargs, ** kwargs) .wait() Datei" /usr/lib/python2.7/subprocess.py " , Linie 710, in __init__ errread, errwrite) File "/usr/lib/python2.7/subprocess.py", Zeile 1327, in _execute_child Erhöhung child_exception OSError: [Errno 2] Datei oder Verzeichnis .. .Any Ideen, was könnte es verursachen? – arcade16

+0

Ich glaube schon, es funktioniert, wenn ich nur python3 wig.py google.com – arcade16