[введите описание изображения здесь] [1] Я всегда получаю ошибку 400 Bad Request при попытке этого кода в python. Кто-нибудь может мне помочь, пожалуйста?
Я читал что-то об изменении пространства имен или что-то, но я понятия не имею, что это значит, поскольку я не знаю о пространствах имен в python.
На картинке внизу есть это xml / текст, который мне дал сайт для получения своих данных.
У меня была такая же проблема при использовании c#.
Для тестирования: вам не нужно правильное имя компании / имя пользователя / пароль, поскольку он выдает 400 ошибок неверного запроса
import requests
company = '''"<Company><CompanyName>comanyname</CompanyName><UserName>username</UserName><Password>password</Password></Company>"'''
date = '"02-02-2020"'
request = """<?xml version="1.0" encoding="utf-8"?><soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"><soap:Body><GetPersonIdInfos xmlns="http://tempuri.org/"><companyIdentity>""" + company + """</companyIdentity><date>""" + date + """</date></GetPersonIdInfos></soap:Body></soap:Envelope>"""
encoded_request = request.encode('utf-8')
headers = {
"Host": "soap.track-and-trace.nl",
"Content-Type": "text/xml; charset=utf-8",
"Content-Length": str(len(encoded_request)),
"SOAPAction": '"' + "http://tempuri.org/GetPersonIdInfos" + '"'
}
response = requests.post(
url="http://soap.track-and-trace.nl/Service1.asmx",
headers=headers,
data=encoded_request,
verify=False)
[1]: https://i.stack.imgur.com/4Dake.png