Mentre in passato ho utilizzato le API, questo è il primo SOAP che ho tentato di utilizzare. Ho copiato, incollato e cambiato parte di questo codice da un tutorial SOAP, ma ho visto che ha fatto 10 diversi modi in 10 diversi esempi, ma nessuno è molto chiaro nello spiegare il codice. Forse il seguente codice non è il modo migliore per farlo, ma è per questo che sto cercando un aiuto e una chiara direzione per entrare. Grazie mille.Come chiamare l'API Soap con Python
import string, os, sys, httplib
server_addr = "auctions.godaddy.com"
service_action = "GdAuctionsBiddingWSAPI/GetAuctionList"
body = """
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns="http://www.example.com/services/wsdl/2.0">
<soapenv:Header/>
<soapenv:Body>
<ns:serviceListRequest>
<ns:userInfo>
</ns:userInfo>
</ns:serviceListRequest>
</soapenv:Body>
</soapenv:Envelope>"""
request = httplib.HTTPConnection(server_addr)
request.putrequest("POST", service_action)
request.putheader("Accept", "application/soap+xml, application/dime, multipart/related, text/*")
request.putheader("Content-Type", "text/xml; charset=utf-8")
request.putheader("Cache-Control", "no-cache")
request.putheader("Pragma", "no-cache")
request.putheader("SOAPAction", "https://auctions.godaddy.com/gdAuctionsWSAPI/gdAuctionsBiddingWS.asmx?op=GetAuctionList" + server_addr + service_action)
request.putheader("Content-Length", "length")
request.putheader("apiKey", "xxxxxx")
request.putheader("pageNumber", "1")
request.putheader("rowsPerPage", "1")
request.putheader("beginsWithKeyword", "word")
request.endheaders()
request.send(body)
response = request.getresponse().read()
print response
alla Python regole di documentazione, non c'è alcun motivo per dire un utente che cosa * non * da fare. Piuttosto, dovresti spiegare i problemi nel codice OP o semplicemente suggerire che questa potrebbe essere una soluzione, senza scoraggiarne un'altra. – Yuval
@Yuval La risposta suggerisce una soluzione migliore - vedere il secondo paragrafo. Il consiglio contro un approccio non inventato qui è stato dato con buona ragione, in buona fede, e in risposta a una domanda che chiedeva chiaramente indicazioni. Due anni dopo, è ancora un buon consiglio, anche se non sei d'accordo con il tono. – user4815162342
@ user4815162342 Si prega di aggiornare la risposta. I collegamenti non sono disponibili ora. –