BeautifulSoup:空条目?不再工作了?

时间:2014-08-09 17:42:09

标签: python beautifulsoup

我想使用BeautifulSoup将xml(谷歌联系人)转换为csv。我有一个完美的脚本,但它现在停止工作而不对源进行任何更改。也许BeautifulSoup改变了?

因此,xml文件包含以下条目:

 <entry ns1:etag="&quot;RcDVSLt7I2AQEQAM.&quot;">
 <category scheme="http://schemas.google.com/g/..." />
 <title>Pepe Estropajo</title>
 </edited>
 <name>
 <fullName>Pepe</fullName>
 <givenName>...</givenName>
 <familyName>Estropajo</familyName>
 </name>
 </entry>

我想提取数据。所以我做了:

 for entry in soup.findAll('entry'):
 name = entry.title
 ....

问题是名称。为什么它找不到标题? 我要求脚本打印名称,并打印出来:

<entry ns1:etag='"Rng-cDVSLyt7I2A9Wh5QEEUNQAM."'></entry>

里面没有任何孩子。

我做错了什么?

1 个答案:

答案 0 :(得分:0)

这样的事情会起作用吗?

>>> entries = """<entry ns1:etag="&quot;RcDVSLt7I2AQEQAM.&quot;">
...  <category scheme="http://schemas.google.com/g/..." />
...  <title>Pepe Estropajo</title>
...  </edited>
...  <name>
...  <fullName>Pepe</fullName>
...  <givenName>...</givenName>
...  <familyName>Estropajo</familyName>
...  </name>
...  </entry>"""
>>> 
>>> from bs4 import BeautifulSoup
>>> soup = BeautifulSoup(entries)
>>> 
>>> for entry in soup.findAll('entry'):
...     print entry.find('title').getText()
... 
Pepe Estropajo