如何在BeautifulSoup中访问名为"name"的标签

Mer*_*glu 13 python xml beautifulsoup

我想访问一个名为的标记"name":

<contact><name>Yesügey</name><lastName>Ye?il</lastName><phone>+90 333 9695395</phone></contact>
Run Code Online (Sandbox Code Playgroud)

由于"name"是BeautifulSoup标记对象的属性,我无法访问子标记name:

>>> c1
<contact><name>Yesügey</name><lastname>Ye?il</lastname><phone>+90 333 9695395</p
hone></contact>
>>> c1.name
'contact'
>>> c1.lastname
<lastname>Ye?il</lastname>
Run Code Online (Sandbox Code Playgroud)

Ade*_*taş 18

你可以这样试试,

>>> soup=BeautifulSoup.BeautifulSoup(content).findAll('name')
>>> for field in soup:
...     print field
... 
<name>Yesügey</name>
Run Code Online (Sandbox Code Playgroud)

要么

print soup.find('name').string
Run Code Online (Sandbox Code Playgroud)


Ter*_*ryA 5

这是我得到的:

from bs4 import BeautifulSoup as BS
soup = '<contact><name>Yesügey</name><lastName>Ye?il</lastName><phone>+90 333 9695395</phone></contact>'
soup = BS(soup)
print soup.find('name').string
# Prints Yes??gey
Run Code Online (Sandbox Code Playgroud)

所以我没有调用名称标签,而只是找到它并获得内部的内容:).