当前位置: 首页 > 面试题库 >

如何从标签中获取文本,但忽略其他子标签

都乐逸
2023-03-14
问题内容

我正在做漂亮的汤。我有一个html字符串:

<div><b>ignore this</b>get this</div>

我如何检索“获取此”,而忽略“ 忽略此

谢谢


问题答案:

您可以获取div文本,而不必递归检索子文本:

>>> from bs4 import BeautifulSoup
>>> soup = BeautifulSoup('<div><b>ignore this</b>get this</div>')
>>> soup.div.find(text=True, recursive=False)
u'get this'

这与文本相对于孩子的位置无关:

>>> soup = BeautifulSoup('<div>get this<b>ignore this</b></div>')
>>> soup.div.find(text=True, recursive=False)
u'get this'


 类似资料:
  • 问题内容: 在某些情况下,我必须从标记中获取文本,例如- 输入标签中的文本是一些说 但是当我使用时,它什么也不会返回。 无论如何,我可以从标签中获取文本吗? 问题答案: 您可以使用以下任何一种: 让我知道这是否没有帮助。

  • 问题内容: 我将列出用户将从中选择的地址列表,然后将返回地址文本。我需要使用,因为不允许换行。 在Label类中,踢球者没有类似方法… 我知道我可以做类似的事情: 但是,我有一个5-20地址的列表,其中包含多个单独的,这将很困难b / c,我无法识别有效标签的位置。我只想访问激活的窗口小部件内容。 是否使用了正确的小部件? 问题答案: 要从标签中获取值,可以使用方法,该方法可用于获取任何配置选项的

  • 问题内容: 我的链接看起来像这样 我想从那里去。我试过了 它输出。 我试过了,但它给了我KeyError。我该如何解决?我的错误是什么? 问题答案: 您可以使用css选择器,使用标题文本拉出所需的跨度: 找到具有包含 RAM 的 title 属性的 跨度 ,等效于在python中说。 或在 re.compile中 使用 find __ 要获取所有数据: 这会给你:

  • 问题内容: 我正在使用带有子标记的HTML元素,这些子标记我想“忽略”或删除,以便文本仍然存在。刚才,如果我尝试使用带有标签的任何元素,那么我得到的仅仅是。 输出: 我要第二行。我该怎么做呢? 问题答案: 并且,您将获得:

  • 问题内容: 我收到此错误,因为其中一位用户在他的帖子中添加了 错误:[$ sanitize:badparse]清理程序无法解析以下html块:<3 我写的代码 我想他要采取仅标签和标签 那可能吗? 谢谢! 问题答案: 您可以创建过滤器,以清理HTML。 我在其中使用了strip_tags函数 http://phpjs.org/functions/strip_tags/ 控制器: 视图: http:

  • 问题内容: 我正在使用beautifulSoup从网站提取数据。每当您重新加载页面时,该网站上的文本都会更改,因此基本上,我希望能够将重点放在类名上作为静态变量,因为文本是动态的。 它打印出 当页面重新加载,我仍然有重点的领域,但我不知道如何只打印文本(在这种情况下是:4) 一旦解决了这个问题,我还有另一个问题:如果该类包含多个标签,是否有办法获取更多静态数据,以确保它只打印我在搜索的文本,而不是