BeautifulSoup:获取具有特定属性的元素,而与属性值无关

拉斐尔·卡尔萨维里尼(Rafael S.Calsaverini)

假设我有以下html:

<div id='0'>
    stuff here
</div>

<div id='1'>
    stuff here
</div>

<div id='2'>
    stuff here
</div>

<div id='3'>
    stuff here
</div>

有没有一种简单的方法可以使用BeautifulSoup提取div具有属性的所有,而与属性id的值无关?我意识到用xpath做到这一点是微不足道的,但是在BeautifulSoup中似乎没有办法进行xpath搜索。

马丁·彼得斯(Martijn Pieters)

用于id=True仅匹配具有属性集的元素:

soup.find_all('div', id=True)

反之亦然。您可以使用以下属性排除标签id

soup.find_all('div', id=False):

要查找具有给定属性的标签,您还可以使用CSS选择器

soup.select('div[id]'):

但是不幸的是,这不支持搜索逆运算符的运算符。

演示:

>>> from bs4 import BeautifulSoup
>>> sample = '''\
... <div id="id1">This has an id</div>
... <div>This has none</div>
... <div id="id2">This one has an id too</div>
... <div>But this one has no clue (or id)</div>
... '''
>>> soup = BeautifulSoup(sample)
>>> soup.find_all('div', id=True)
[<div id="id1">This has an id</div>, <div id="id2">This one has an id too</div>]
>>> soup.find_all('div', id=False)
[<div>This has none</div>, <div>But this one has no clue (or id)</div>]
>>> soup.select('div[id]')
[<div id="id1">This has an id</div>, <div id="id2">This one has an id too</div>]

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

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

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

SQL:选择具有特定值的行,而与列无关

来自分类Dev

查找具有特定数据属性的所有元素(与值无关)

来自分类Dev

在XmlDocument中获取具有特定属性值的xml元素

来自分类Dev

更改具有特定名称属性的元素的值属性

来自分类Dev

使用C#中的Selenium获取具有特定类的所有元素的属性值的列表

来自分类Dev

JQGrid获得特定列的所有值,而与分页无关

来自分类Dev

JQGrid获得特定列的所有值,而与分页无关

来自分类Dev

获取具有特定属性最大值的哈希数组中元素的索引

来自分类Dev

如何从特定元素获取具有相似类名的项目的某些属性的值

来自分类Dev

jQuery:选择具有特定数据属性值的元素?

来自分类Dev

Xpath:查找其后代具有特定属性值的元素

来自分类Dev

jQuery:选择具有特定数据属性值的元素?

来自分类Dev

具有特定属性值的元素的SimpleXML xpath?

来自分类Dev

删除具有特定属性值的选择元素

来自分类Dev

groovy / xml-获取具有较大属性值的元素

来自分类Dev

如果元素具有具有特定 id 的附加属性,则更改属性的值

来自分类Dev

使用BeautifulSoup定位具有特定属性的<a>

来自分类Dev

获取具有特定属性相同值的对象的列表

来自分类Dev

从具有特定属性值的对象中获取值

来自分类Dev

获取具有特定节点属性值的最新节点

来自分类Dev

获取属性值BeautifulSoup

来自分类Dev

XPath是否具有具有特定值的任何属性的所有元素?

来自分类Dev

选择具有特定属性的元素

来自分类Dev

隐藏具有特定属性的元素

来自分类Dev

从数组获取具有max属性的元素

来自分类Dev

jQuery从具有属性的元素获取ID

来自分类Dev

获取具有min属性的元素

来自分类Dev

选择具有设置为特定值的属性的元素内的所有元素

来自分类Dev

如何制作WP_Query以获取具有特定属性键和属性值的产品变型?

Related 相关文章

  1. 1

    SQL:选择具有特定值的行,而与列无关

  2. 2

    查找具有特定数据属性的所有元素(与值无关)

  3. 3

    在XmlDocument中获取具有特定属性值的xml元素

  4. 4

    更改具有特定名称属性的元素的值属性

  5. 5

    使用C#中的Selenium获取具有特定类的所有元素的属性值的列表

  6. 6

    JQGrid获得特定列的所有值,而与分页无关

  7. 7

    JQGrid获得特定列的所有值,而与分页无关

  8. 8

    获取具有特定属性最大值的哈希数组中元素的索引

  9. 9

    如何从特定元素获取具有相似类名的项目的某些属性的值

  10. 10

    jQuery:选择具有特定数据属性值的元素?

  11. 11

    Xpath:查找其后代具有特定属性值的元素

  12. 12

    jQuery:选择具有特定数据属性值的元素?

  13. 13

    具有特定属性值的元素的SimpleXML xpath?

  14. 14

    删除具有特定属性值的选择元素

  15. 15

    groovy / xml-获取具有较大属性值的元素

  16. 16

    如果元素具有具有特定 id 的附加属性,则更改属性的值

  17. 17

    使用BeautifulSoup定位具有特定属性的<a>

  18. 18

    获取具有特定属性相同值的对象的列表

  19. 19

    从具有特定属性值的对象中获取值

  20. 20

    获取具有特定节点属性值的最新节点

  21. 21

    获取属性值BeautifulSoup

  22. 22

    XPath是否具有具有特定值的任何属性的所有元素?

  23. 23

    选择具有特定属性的元素

  24. 24

    隐藏具有特定属性的元素

  25. 25

    从数组获取具有max属性的元素

  26. 26

    jQuery从具有属性的元素获取ID

  27. 27

    获取具有min属性的元素

  28. 28

    选择具有设置为特定值的属性的元素内的所有元素

  29. 29

    如何制作WP_Query以获取具有特定属性键和属性值的产品变型?

热门标签

归档