के साथ पायथन में त्रुटि हैंडलिंग मैं एसयूडीएस का उपयोग कर एक wsdl फ़ाइल के माध्यम से एक कैमरा को नियंत्रित करने की कोशिश कर रहा हूं। मुझे कोड काम मिल गया है लेकिन मैं स्क्रिप्ट में त्रुटि प्रबंधन करना चाहता हूं। मैंने अलग-अलग अपवादों का प्रयास किया है लेकिन स्क्रिप्ट काम करने में असमर्थ हूं। जब मैं एक अवैध समन्वय दर्ज करता हूं तो मुझे एक त्रुटि मिलती है। जिस कोड का मैं उपयोग कर रहा हूं उसके बाद मैं जिस त्रुटि को प्राप्त कर रहा हूं उसके बाद नीचे दिया गया है।एसयूडीएस
#!/home/build/Python-2.6.4/python
import suds
from suds.client import Client
####################################################################
#
# Python SUDS Script that controls movement of Camera
#
####################################################################
#
# Absolute Move Function
#
####################################################################
def absoluteMove():
# connects to WSDL file and stores location in variable 'client'
client = Client('http://file.wsdl')
# Create 'token' object to pass as an argument using the 'factory' namespace
token = client.factory.create('ns4:ReferenceToken')
print token
# Create 'dest' object to pass as an argument and values passed to this object
dest = client.factory.create('ns4:PTZVector')
dest.PanTilt._x=400
dest.PanTilt._y=0
dest.Zoom._x=1
print dest
# Create 'speed' object to pass as an argument and values passed to this object
speed = client.factory.create('ns4:PTZSpeed')
speed.PanTilt._x=0
speed.PanTilt._y=0
speed.Zoom._x=1
print speed
# 'AbsoluteMove' method invoked passing in the new values entered in the above objects
try:
result = client.service.AbsoluteMove(token, dest, speed)
except RuntimeError as detail:
print 'Handling run-time error:', detail
print "absoluteMove result ", result
result = absoluteMove()
त्रुटि के नीचे है:
No handlers could be found for logger "suds.client"
Traceback (most recent call last):
File "ptztest.py", line 48, in <module>
if __name__ == '__main__': result = absoluteMove()
File "ptztest.py", line 42, in absoluteMove
result = client.service.AbsoluteMove(token, dest, speed)
File "build/bdist.linux-i686/egg/suds/client.py", line 537, in __call__
File "build/bdist.linux-i686/egg/suds/client.py", line 597, in invoke
File "build/bdist.linux-i686/egg/suds/client.py", line 632, in send
File "build/bdist.linux-i686/egg/suds/client.py", line 683, in failed
File "build/bdist.linux-i686/egg/suds/bindings/binding.py", line 235, in get_fault
suds.WebFault: Server raised fault: 'Error setting requested pan'
मुझे यकीन है कि जो अपवाद मैं यहाँ का उपयोग करना चाहिए नहीं कर रहा हूँ। क्या कोई इस त्रुटि को पकड़ने के बारे में जानता है। मान 400 के साथ एक्स समन्वय डिग्री में है इसलिए यही त्रुटि होती है।
धन्यवाद
ठीक है मुझे समाधान मिला है। साबुन का झाग में यदि आप दर्ज करें:
faults=False
ग्राहक परिभाषा में, इस दोष फैल जाती है और कारण है कि गलती हुआ देता है। लाइन पढ़ना चाहिए:
client = Client('http://file.wsdl', faults=False)
पोस्ट है कि मैं में चिह्नित किया है के रूप में सही जवाब भी पकड़ने के लिए कि एक समस्या हो गया है में सक्षम है।
धन्यवाद सभी
मैं दोष डाल दिया है = झूठी और suds.WebFault को पकड़ने के लिए, लेकिन अभी भी उस त्रुटि हो रही कोशिश की suds.client " –