python - \n 没有转换为 BeautifulSoup 输出中的结束行
问题描述
我正在尝试学习 BeautifulSoup,但我之前没有这方面的经验,我正在从这个问题的答案中测试实现 - > python BeautifulSoup search 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>]
解决方案
如果您正在寻找输出标签中的文本,那么您不妨遍历该find_all
方法返回的列表
all = soup.find_all("a", {"class":"black"})
for i in all:
print(i.text)
这将返回带有空格的标签文本,这些空格可以被清除
推荐阅读
- c - 为什么结构的大小与结构指针的大小不同
- json - 如何使用 cl-json 库将 json-string 转换为“复杂”的 CLOS 对象?
- reactjs - 如何更改反应引导模式的背景颜色
- mysql - 在 H2 表和 ResultSet 之间进行 JOIN(从 MySQL 表中选择)
- android - 如果设备同时支持 armeabi-v7a 和 arm64-v8a 是否存在 playstore 服务的情况,或者我只能从两者中获得一个架构 apk
- html - CSS 网格中的神秘空白
- android - 没有从 USB 设备返回数据
- python - 自定义 RMSE 与取内置 Keras MSE 的根进行相同的预测不同
- node.js - 为什么我的 node.js 应用程序在重新加载/刷新时会出现“Cannot GET /page”错误?
- objective-c - iOS 13 中的 kCBAdvDataManufacturerData 数据格式发生了变化?