Подскажите как разобраться со следующей проблемой.
Возвращает исключение «AttributeError: TAPI instance has no attribute 'client'» на строке с методом «logout» - self.client.service.Logout()
Что я упустил?
from suds.client import Client
import sys, datetime
import logging
class TAPI:
def __init__(self):
self.host, self.user, self.passwd,self.personid = '127.0.0.1', 'xxxxxxxx', 'xxxxxx', 'xxxxxxx'
def connect(self):
self.client = Client(url='http://%s/admin/ytre/api2.wsdl' % self.host, location='https://%s:45651' % self.host, faults=False)
try:
self.response = self.client.service.Login(self.user,self.passwd)
for cookie in self.client.options.transport.cookiejar:
if cookie.name == 'sessnu':
self.client.set_options(headers={'Set-Cookie': 'sessnum={0}'.format(cookie.value)})
except:
logging.error('API connection error: {0}'.format(sys.exc_value))
sys.exit(1)
def logout(self):
self.client.service.Logout()
Traceback (most recent call last):
File "/usr/local/ur/scripts/script.py", line 144, in
api.logout()
File "/usr/local/ ur/scripts/script2.py", line 47, in logout
self.client.service.Logout()
AttributeError: TAPI instance has no attribute 'client'
Выше код расположен в script2.py
Ниже код script.py
except:
e = sys.exc_info()
logging.error('Exception {0}: {1}'.format(e[0], e[1]))
logging.error(' '.join(traceback.format_exc().split()))
dbase.commit()
finally:
script2.logout()
dbase.close()
logging.info("logout")