\ n不能转换为我在BeautifulSoup输出中的终点

时间:2018-11-02 21:54:17

标签: python beautifulsoup

我正在尝试学习BeautifulSoup,但我以前没有经验,我正在从该问题的答案-> python BeautifulSoup searching a tag

中测试实现。

但是我的输出与他们列出的输出不匹配,因为\n没有转换成新行。有什么问题,我该如何解决?

输入:

from bs4 import BeautifulSoup

html_doc = """<html>
 <body>
  <a class="black">
   <b>
    text1
   </b>
   <c>
    text2
   </c>
  </a>
  <a class="micio">
  </a>
  <a class="black">
  </a>
 </body>
</html>"""
soup = BeautifulSoup(html_doc, "lxml")
soup.prettify()
print soup.find_all("a", {"class":"black"})

输出:

[<a class="black">\n<b>\n    text1\n   </b>\n<c>\n    text2\n   </c>\n</a>, <a class="black">\n</a>]

1 个答案:

答案 0 :(得分:0)

如果您希望在标签中输出文本,则最好通过find_all方法遍历返回的列表

all = soup.find_all("a", {"class":"black"})
for i in all:
    print(i.text)

这将返回带有空格的标签文本,该空格可以清除