如何使BeautifulGroup不添加<html>或<?xml?>

2024-10-04 09:24:19 发布

您现在位置:Python中文网/ 问答频道 /正文

有没有办法让BeautifulGroup不在xml文件或<html> </html>标记的开头添加<?xml version="1.0" encoding="utf-8"?>?在

我读过bs4 doc,并尝试过xml、html和lxml解析器,但结果是相似的。 我还测试了soup.find('?xml'),这不会返回任何结果。在

$ python
Python 2.7.5 (default, Aug  2 2016, 04:20:16) 
[GCC 4.8.5 20150623 (Red Hat 4.8.5-4)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> from bs4 import BeautifulSoup
>>> xml='<tag>value</tag>'
>>> soup=BeautifulSoup(xml,'xml')
>>> soup
<?xml version="1.0" encoding="utf-8"?>  <=============== 
<tag>value</tag>
>>> soup.find('?xml')
>>> soup=BeautifulSoup(xml,'html')
>>> soup
<html><body><tag>value</tag></body></html>  <===========
>>> soup=BeautifulSoup(xml,'lxml')
>>> soup
<html><body><tag>value</tag></body></html>  <===========
>>> 

Tags: valueversionhtmltagbodyxmlfindlxml
1条回答
网友
1楼 · 发布于 2024-10-04 09:24:19
#You can directly print the tag (or body). Hope this helps.
from bs4 import BeautifulSoup
xml='<tag>value</tag>'
soup=BeautifulSoup(xml,'lxml')
soup.tag  #or soup.body

#Output:
<tag>value</tag>

相关问题 更多 >