如果整個類文本 = 新,有沒有辦法提取下面的類
<li class="ClassifiedDetail">New
試過:
doc.find('li', class_ = 'ClassifiedDetail').attrs['New']
可能類似于 if class text = New 或包含“New”,接受嗎?
uj5u.com熱心網友回復:
注意 不清楚你是指類還是標簽,所以我假設你的意思是標簽的文本
一種方法是使用css selectorsand :-soup-contains():
soup.select('li.ClassifiedDetail:-soup-contains("New")')
Alternativ 使用string=re.compile(), cause 字串or in former versionstext` 僅適用于完整字串的完全匹配:
soup.find_all('li', class_ = 'ClassifiedDetail',text=re.compile('New'))
例子
from bs4 import BeautifulSoup
html='''
<li >New</li>
<li >New York</li>
<li >Ne </li>
<li >Old</li>
<li >knew</li>
'''
soup = BeautifulSoup(html)
for li in soup.select('li.ClassifiedDetail:-soup-contains("New")'):
print(li.text)
輸出
New
New York
轉載請註明出處,本文鏈接:https://www.uj5u.com/qukuanlian/419205.html
標籤:
上一篇:使用Rvest動態抓取內容,其中3個部分的URL是動態變化的
下一篇:網路抓取結果.csv行的順序錯誤
