Я не уверен, возникают проблемы разобрать этот ответ:Как разобрать XML с помощью BeautifulSoap?
<DadosEstoque>
<ProtocoloEstoque>45ccd004-4c89-4c73</ProtocoloEstoque>
<CodigoProduto>000197</CodigoProduto>
</DadosEstoque>
<DadosEstoque>
<ProtocoloEstoque>45ccd01212</ProtocoloEstoque>
<CodigoProduto>000200</CodigoProduto>
</DadosEstoque>
Python:
r = requests.post("http://......asmx/EstoquesDisponiveis", data = {"ChaveIdentificacao":"XXXX-XXXX-XXXX-XXXX"})
soup = BeautifulSoup(r.text)
for abbr in soup.findAll('CodigoProduto'):
productcode = abbr.string
I Want: печать 'CodigoProduto:' + ProductCode
Python не возвращает ничего ... NO OUTPUT.
ОБНОВЛЕНИЕ !!! Решено
import urllib2
from xml.dom import minidom
usock = urllib2.urlopen('http://ws......')
xmldoc = minidom.parse(usock)
staffs = xmldoc.getElementsByTagName("DadosEstoque")
for staff in staffs:
sku = staff.getElementsByTagName("CodigoProduto")[0]
protocolo = staff.getElementsByTagName("ProtocoloEstoque")[0]
print("SKU: %s" % (sku.firstChild.data))
print("PROTOCOLO: %s" % (protocolo.firstChild.data))
Как насчет того, чтобы вы изменили его на 'soup = BeautifulSoup (r.text," xml ")'? – alecxe
print r.text показывает xml, но с BeautifulSoup (r.text, "xml") я получаю сообщение об ошибке: AttributeError: объект 'str' не имеет атрибута 'text'. – user2925795