Externes Pythonscript auf Festplatte mittels Zope ausführen

Django, Flask, Bottle, WSGI, CGI…
Antworten
BoOnOdY
User
Beiträge: 112
Registriert: Samstag 22. Juli 2006, 13:38

Mittwoch 10. Januar 2007, 15:28

Hy,

also ich hab mir jetzt ein kleines Script gebaut, das ein paar sachen aufruft und so

hier:

Code: Alles auswählen

import ftplib, subprocess, popen2
ftp=ftplib.FTP("1**.1*.***.**")
ftp.login("****", "****")
f=file ("E:\AEP\UglyProg\cdr.log","w")
print ftp.retrbinary("Retr \\cdr\\cdr.log", f.write)
f.close()
process=subprocess.Popen("E:\\AEP\\UglyProg\\noi.exe")
process.wait()
process=subprocess.Popen("E:\\AEP\\UglyProg\\Python_script.py")
process.wait()
ich müsste ja das Modul subprocess erst mal in mein ZopePython reinbekommen also wollte ich einfach in Zope folgendes machen:

Code: Alles auswählen

import os
os.startfile("scriptname.py") 
also habe ich ein Script gebaut, dass auf meiner Festplatte das obrige Script aufrufen soll.

Jetzt bin ich auf testen gegangen, dann fragt der mich nach einem Passwort und benutzernamen.
Ich gebe einen Benutzernamen der in allen Userfoldern von Zope steht und dann fragt Zope wiederholt (also findet es den namen und passwort nicht)
Error Type: Unauthorized
Error Value: You are not allowed to access 'startfile' in this context
Was mache ich falsch? ich will doch nur das Script auf Knopfdruck über eine Benutzeroberfläche in Zope laufen lassen.

Gruß BoOnOdY
BoOnOdY
User
Beiträge: 112
Registriert: Samstag 22. Juli 2006, 13:38

Mittwoch 10. Januar 2007, 16:32

ich fasse die Frage noch einmal kürzer


Wie starte ich einfach diesen Script in Zope ohne vorher Subprocess importiert zu haben (in das ZopePyhton).
Der angegebene Ordner befindet sich auf dem gleichen Server wie Zope. kann ich einfach so auf ihn zugreifen?

Code: Alles auswählen

import ftplib, subprocess, popen2
ftp=ftplib.FTP("1**.1*.***.**")
ftp.login("****", "****")
f=file ("E:\AEP\UglyProg\cdr.log","w")
print ftp.retrbinary("Retr \\cdr\\cdr.log", f.write)
f.close()
process=subprocess.Popen("E:\\AEP\\UglyProg\\noi.exe")
process.wait()
process=subprocess.Popen("E:\\AEP\\UglyProg\\Python_script.py")
process.wait()
Benutzeravatar
gerold
Python-Forum Veteran
Beiträge: 5555
Registriert: Samstag 28. Februar 2004, 22:04
Wohnort: Oberhofen im Inntal (Tirol)
Kontaktdaten:

Mittwoch 10. Januar 2007, 16:52

http://halvar.at | Kleiner Bascom AVR Kurs
Wissen hat eine wunderbare Eigenschaft: Es verdoppelt sich, wenn man es teilt.
BoOnOdY
User
Beiträge: 112
Registriert: Samstag 22. Juli 2006, 13:38

Mittwoch 10. Januar 2007, 17:28

danke für die Antwort aber,
die meisten Links in den Antworten funktionieren nicht mehr, aber trozdem hab ich noch ne frage,
warum ist das in Zope nicht erlaubt??:

Line 1: Exec statements are not allowed.
´

und vorallem
Error Type: ImportError
Error Value: import of "subprocess" is unauthorized

bzw. hab ich noch ne ganz andere Frage:

kann ich einfach so auf Dateien zugreifen die auf dem Pc gespeichert sind auf dem Zope läuft oder funktioniert das gar nicht?
kann ja sein, dass die aufm server sein müssen. hab da gerade gar keine Vorstellung von

*Nachdenk* ich stell die Frage bestimmt irgendwie falsch..
will nur ohne großen aufwand den Script auf einem Rechner im internen Netzwerk ausführen auf dem ich nicht bin und das über ein HTML formular steuern ..

also wenn der gedrückt wird soll er den script aufrufen, der dann auf dem Pc auf dem auch zope ist ausgeführt wird ..

Gruß BoOnOdY
Benutzeravatar
gerold
Python-Forum Veteran
Beiträge: 5555
Registriert: Samstag 28. Februar 2004, 22:04
Wohnort: Oberhofen im Inntal (Tirol)
Kontaktdaten:

Mittwoch 10. Januar 2007, 22:24

BoOnOdY hat geschrieben:die meisten Links in den Antworten funktionieren nicht mehr
... http://www.python-forum.de/post-23937.html#23937 habe ich soeben aktualisiert.

Bitte durchlesen und auch den Links folgen. Deine Fragen werden damit alle geklärt.

mfg
Gerold
:-)
http://halvar.at | Kleiner Bascom AVR Kurs
Wissen hat eine wunderbare Eigenschaft: Es verdoppelt sich, wenn man es teilt.
Antworten