簡體   English   中英

Python BeautifulSoup:如何查找具有特定屬性的標記的最后一次出現

[英]Python BeautifulSoup: How to Find Last Occurrence of Tag with Specific Attribute

如何找到具有以下屬性的最后一次出現的標簽: data-index而沒有標簽的值?

我已經寫了下面的代碼,但它返回IndexError: list index out of range盡管列表不是空的。

soup.find_all(attrs={"data-index"})[-1]

提前致謝! 😉

將設置的attrs={"data-index"}更改為dict attrs={"data-index":True}

data = '''<div>
 <div>
   <div data-index="1">xxx</div>
 </div>

 <div>
   <div data-index="2">xxx</div>
 </div>

 <div>
   <div data-index="3">xxx</div>
 </div>
</div>
'''

from bs4 import BeautifulSoup

soup = BeautifulSoup(data, 'lxml')
print(soup.find_all(attrs={"data-index":True})[-1])

印刷品:

<div data-index="3">xxx</div>

或使用CSS選擇器:

print(soup.select('[data-index]')[-1])

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM