从Beautifulsoup的“提取”标签中提取内容

阿姆里斯·克里希纳(Amrith Krishna)

我在xml中有一个语料库,其中的一个标记名为extract <EXTRACT>但该词是Beautifulsoup中的关键字。如何提取此标签的内容。当我写entry.extract.text它返回错误,当我使用时entry.extract,将提取全部内容。

据我对Beautifulsoup的了解,它执行标签的大小写折叠。如果有某种方法可以克服这一问题,对我也可能会有所帮助。

注意:目前,我已通过以下方法解决了该问题。

extra = entry.find('extract')
absts.write(str(extra.text))

但是我想知道是否有其他方法可以像其他标签一样使用它 entry.tagName

ec

根据BS源代码tag.tagname实际上是tag.find("tagname")在后台调用__getattr__()Tag方法的外观:

def __getattr__(self, tag):
    if len(tag) > 3 and tag.endswith('Tag'):
        # BS3: soup.aTag -> "soup.find("a")
        tag_name = tag[:-3]
        warnings.warn(
            '.%sTag is deprecated, use .find("%s") instead.' % (
                tag_name, tag_name))
        return self.find(tag_name)
    # We special case contents to avoid recursion.
    elif not tag.startswith("__") and not tag=="contents":
        return self.find(tag)
    raise AttributeError(
        "'%s' object has no attribute '%s'" % (self.__class__, tag))

看到它完全基于find(),因此tag.find("extract")在您的情况下可以使用

from bs4 import BeautifulSoup


data = """<test><EXTRACT>extract text</EXTRACT></test>"""
soup = BeautifulSoup(data, 'html.parser')
test = soup.find('test')
print test.find("extract").text  # prints 'extract text'

另外,您可以使用test.extractTag.text,但已弃用,我不推荐使用。

希望能有所帮助。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

在BeautifulSoup中提取多个Span标签中的内容

来自分类Dev

从标签beautifulsoup python中提取类名

来自分类Dev

从BeautifulSoup标签元素中提取文本

来自分类Dev

Python BeautifulSoup从组div标签中的html文件p标签中提取内容。我正在打印空白

来自分类Dev

从标签中提取文本

来自分类Dev

从月份中提取内容

来自分类Dev

如何使用BeautifulSoup在html注释标签中提取json?

来自分类Dev

从<script>标签BeautifulSoup4中提取令牌,请求

来自分类Dev

仅从 BeautifulSoup 中的标签中提取最后一项

来自分类Dev

BeautifulSoup4 不能只从标签中提取文本

来自分类Dev

使用 BeautifulSoup 从 <a href 标签中提取特定页面链接

来自分类Dev

从Beautifulsoup标签提取src

来自分类Dev

使用BeautifulSoup提取<a>标签

来自分类Dev

从Beautifulsoup标签提取src

来自分类Dev

BeautifulSoup:在Python中提取“ img alt”内容Web爬网

来自分类Dev

无法通过BeautifulSoup从$ 0的DOM元素中提取内容

来自分类Dev

使用 python BeautifulSoup 从 html 中提取特定内容

来自分类Dev

BeautifulSoup:如何提取内容?

来自分类Dev

从标签中提取多个标签

来自分类Dev

从内容中提取html标签:在Yahoo Pipes中编码

来自分类Dev

Python BeautifulSoup unwrap()无法正常工作。想要提取标签的内容

来自分类Dev

如何使用BeautifulSoup提取包含特定文本的div标签的内容

来自分类Dev

从清单BeautifulSoup中提取文本

来自分类Dev

无法从 BeautifulSoup 中提取文本

来自分类Dev

从标签中提取输入的ID

来自分类Dev

从多个标签中提取innerHTML

来自分类Dev

从XML标签中提取数据

来自分类Dev

在scrapy中提取标签值

来自分类Dev

从嵌套的json中提取内容

Related 相关文章

热门标签

归档