我需要一些脚本帮助我'm writing to connect to a SOAP service for Symantec'的DLP事件报告和更新API(v14.5) - https://support.symantec.com/en_US/article.DOC9264.html

我目前遇到的问题是只需用zeep连接到API . 似乎请求正在尝试对“https://www.w3.org/2005/05/xmlmine”进行身份验证,这显然赢得了't work. I' ve提供的代码示例以及下面的错误 .

有趣的是,如果我从我的调用中删除了?wsdl,它似乎可以进行身份验证 . 我想知道是否需要创建另一项服务 .

wsdl = 'https://<internal_ip>/ProtectManager/services/v2011/incidents?wsdl'

session = Session()
session.auth = HTTPBasicAuth('username', 'password')
session.verify = False
transport = Transport(session=session)

client = Client(wsdl=wsdl, transport=transport)

不管我之后有什么,因为我在控制台中收到以下错误:

"C:\Users\<redacted>\PycharmProjects\DLP Reports\venv\Scripts\python.exe" "C:/Users/<redacted>/PycharmProjects/DLP Reports/dlp.py"
Traceback (most recent call last):
  File "C:/Users/<redacted>/PycharmProjects/DLP Reports/dlp.py", line 36, in <module>
    client = Client(wsdl=wsdl, transport=transport)
  File "C:\Users\<redacted>\PycharmProjects\DLP Reports\venv\lib\site-packages\zeep\client.py", line 134, in __init__
    self.wsdl = Document(wsdl, self.transport, strict=strict)
  File "C:\Users\<redacted>\PycharmProjects\DLP Reports\venv\lib\site-packages\zeep\wsdl\wsdl.py", line 81, in __init__
    root_definitions = Definition(self, document, self.location)
  File "C:\Users\<redacted>\PycharmProjects\DLP Reports\venv\lib\site-packages\zeep\wsdl\wsdl.py", line 180, in __init__
    self.parse_types(doc)
  File "C:\Users\<redacted>\PycharmProjects\DLP Reports\venv\lib\site-packages\zeep\wsdl\wsdl.py", line 313, in parse_types
    self.types.add_documents(schema_nodes, self.location)
  File "C:\Users\<redacted>\PycharmProjects\DLP Reports\venv\lib\site-packages\zeep\xsd\schema.py", line 106, in add_documents
    document = self.create_new_document(node, location)
  File "C:\Users\<redacted>\PycharmProjects\DLP Reports\venv\lib\site-packages\zeep\xsd\schema.py", line 207, in create_new_document
    schema.load(self, node)
  File "C:\Users\<redacted>\PycharmProjects\DLP Reports\venv\lib\site-packages\zeep\xsd\schema.py", line 422, in load
    visitor.visit_schema(node)
  File "C:\Users\<redacted>\PycharmProjects\DLP Reports\venv\lib\site-packages\zeep\xsd\visitor.py", line 137, in visit_schema
    self.process(child, parent=node)
  File "C:\Users\<redacted>\PycharmProjects\DLP Reports\venv\lib\site-packages\zeep\xsd\visitor.py", line 73, in process
    result = visit_func(self, node, parent)
  File "C:\Users\<redacted>\PycharmProjects\DLP Reports\venv\lib\site-packages\zeep\xsd\visitor.py", line 210, in visit_import
    schema = self.schema.create_new_document(schema_node, location)
  File "C:\Users\<redacted>\PycharmProjects\DLP Reports\venv\lib\site-packages\zeep\xsd\schema.py", line 207, in create_new_document
    schema.load(self, node)
  File "C:\Users\<redacted>\PycharmProjects\DLP Reports\venv\lib\site-packages\zeep\xsd\schema.py", line 422, in load
    visitor.visit_schema(node)
  File "C:\Users\<redacted>\PycharmProjects\DLP Reports\venv\lib\site-packages\zeep\xsd\visitor.py", line 137, in visit_schema
    self.process(child, parent=node)
  File "C:\Users\<redacted>\PycharmProjects\DLP Reports\venv\lib\site-packages\zeep\xsd\visitor.py", line 73, in process
    result = visit_func(self, node, parent)
  File "C:\Users\<redacted>\PycharmProjects\DLP Reports\venv\lib\site-packages\zeep\xsd\visitor.py", line 196, in visit_import
    strict=self.schema.strict)
  File "C:\Users\<redacted>\PycharmProjects\DLP Reports\venv\lib\site-packages\zeep\loader.py", line 72, in load_external
    content = transport.load(url)
  File "C:\Users\<redacted>\PycharmProjects\DLP Reports\venv\lib\site-packages\zeep\transports.py", line 110, in load
    content = self._load_remote_data(url)
  File "C:\Users\<redacted>\PycharmProjects\DLP Reports\venv\lib\site-packages\zeep\transports.py", line 126, in _load_remote_data
    response.raise_for_status()
  File "C:\Users\<redacted>\PycharmProjects\DLP Reports\venv\lib\site-packages\requests\models.py", line 935, in raise_for_status
    raise HTTPError(http_error_msg, response=self)
requests.exceptions.HTTPError: 401 Client Error: Unauthorized for url: https://www.w3.org/2005/05/xmlmime

Process finished with exit code 1

我能够通过SOAPUI成功连接到API并运行操作 . SOAPUI告诉我WSDL具有以下定义部分:

  • 事件?wsdl

  • 事件?xsd = 1

  • 事件?xsd = 2

  • xmlmine

  • 事件?xsd = 3

  • 事件?xsd = 4

  • 事件?xsd = 5

我只能假设有一些关于xmlmime定义的引用 . 任何帮助将不胜感激 .