suds的断言错误

2024-10-02 12:28:08 发布

您现在位置:Python中文网/ 问答频道 /正文

我试图从官方pip存储库发送一些jurko(python3.5.2)使用suds编写的SOAP。在

这是我的密码。不幸的是,我应该隐藏我的登录名和密码,这样你就不能把它复制粘贴到你的终端上。在

my_login = 'login'
my_password = 'password'
barcode = '10100082848426'
message = \
                """<?xml version="1.0" encoding="UTF-8"?>
                                <soap:Envelope xmlns:soap="http://www.w3.org/2003/05/soap-envelope" xmlns:oper="http://russianpost.org/operationhistory" xmlns:data="http://russianpost.org/operationhistory/data" xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
                                <soap:Header/>
                                <soap:Body>
                                   <oper:getOperationHistory>
                                      <data:OperationHistoryRequest>
                                         <data:Barcode>""" + barcode+ """</data:Barcode>
                                         <data:MessageType>0</data:MessageType>
                                         <data:Language>RUS</data:Language>
                                      </data:OperationHistoryRequest>
                                      <data:AuthorizationHeader soapenv:mustUnderstand="1">
                                         <data:login>"""+ my_login +"""</data:login>
                                         <data:password>""" + my_password + """</data:password>
                                      </data:AuthorizationHeader>
                                   </oper:getOperationHistory>
                                </soap:Body>
                             </soap:Envelope>"""
result = client.service.getOperationHistory(__inject={'msg':message})

这里我得到一个错误:

^{pr2}$

我无法从错误中找出原因。有什么建议吗?在

注意:此请求是一个俄语Post-API请求,需要全部执行here


Tags: orghttp密码messagedatamyloginpassword
2条回答

过了一段时间,我又遇到了这个问题,这似乎是编码的问题。我在CentOS上设置了locale为“ru”_RU.utf公司-8英寸,一切都开始运转了。在

这样可以解决问题:

from suds import byte_str
message = byte_str(message)

相关问题 更多 >

    热门问题