how to catch error with system()
Diez B. Roggisch
deets.nospaaam at web.de
Mon Dec 12 10:27:46 EST 2005
eight02645999 at yahoo.com wrote:
> hi
>
> i have a piece of python code extract that calls an external java
> program
> cmd = """java someclass someargs"""
> try:
> ret = os.WEXITSTATUS(os.system(cmd))
> except:
> print blah
> else:
> dosomething(ret)
>
> the thing is, the java class "someclass" produces it's own errors when
> something goes wrong.
> something like
> java.io.FileNotFoundException: somefile (No such file or directory)
> at java.io.FileInputStream.open(Native Method)
> at java.io.FileInputStream.<init>(FileInputStream.java:106)
> at java.io.FileInputStream.<init>(FileInputStream.java:66)
> ......
>
> how can i supress this error from showing when i execute
> ./pythonscript.py and at the same time logging it to an errlog file??
You probably want to catche the subprocesses stdout/stderr streams. To do
so, use the subprocess module (if you are on python2.4), or the
popen2-module. See the docs for how to use them.
--
Regards,
Diez B. Roggisch
More information about the Python-list
mailing list