我将推文保存在XML文件中:
<tweet>
<tweetid>142389495503925248</tweetid>
<user>ccifuentes</user>
<content><![CDATA[Salgo de #VeoTV , que día más largoooooo...]]></content>
<date>2011-12-02T00:47:55</date>
<lang>es</lang>
<sentiments>
<polarity><value>NONE</value><type>AGREEMENT</type></polarity>
</sentiments>
<topics>
<topic>otros</topic>
</topics>
</tweet>
要解析这些,我通过
创建了一个BeautifulSoup实例soup = BeautifulSoup(xml, "lxml")
其中xml是原始XML文件。要访问一条推文,我就这样做了:
tweets = soup.find_all('tweet')
for tw in tweets:
print(tw)
break
这导致
<tweet>
<tweetid>142389495503925248</tweetid>
<user>ccifuentes</user>
<content></content>
<date>2011-12-02T00:47:55</date>
<lang>es</lang>
<sentiments>
<polarity><value>NONE</value><type>AGREEMENT</type></polarity>
</sentiments>
<topics>
<topic>otros</topic>
</topics>
</tweet>
请注意,我打印第一条推文时省略了CDATA部分。得到它对我很重要,我该怎么做?
答案 0 :(得分:1)
soup = bs4.BeautifulSoup(xml, 'xml')
将解析器更改为xml
出:
<content>Salgo de #VeoTV , que día más largoooooo...</content>
或html.parser
:
soup = bs4.BeautifulSoup(xml, 'html.parser')
出:
<content><![CDATA[Salgo de #VeoTV , que día más largoooooo...]]></content>