Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import hashlib
- import logging
- from suds import WebFault
- from suds.client import Client
- logger = logging.getLogger(__name__)
- logging.getLogger('suds.client').setLevel(logging.CRITICAL)
- logging.basicConfig(level=logging.DEBUG)
- login = 'yyy'
- password = 'xxx'
- api_key = '00000000'
- class AllegroWebAPI(Client):
- country_code = 1 # Poland
- country_id = 1 # Poland
- endpoint = 'http://webapi.allegro.pl/uploader.php?wsdl'
- def __init__(self, api_key, login, password):
- self.api_key = api_key
- self.login = login
- self.enc_passwd = hashlib.sha256(password).digest().encode('base64')
- self.client = Client(self.endpoint)
- self.service = self.client.service
- self.result = self.service.doQuerySysStatus(self.country_code, self.country_id, api_key)
- self.version = self.result['ver-key']
- self.sign_in()
- def sign_in(self):
- """Authenticates using encrypted password."""
- session = self.service.doLoginEnc(self.login, self.enc_passwd, self.country_code, self.api_key, self.version)
- self.session_id = session['session-handle-part']
- self.session = session
- def get_offers(self):
- return self.doGetMySellItems(self.session_id)
- client = AllegroWebAPI(api_key, login, password)
- print(client.get_offers())
RAW Paste Data