我正在嘗試使用 python 從網站上獲取商品的價格。
import requests
from bs4 import BeautifulSoup
URL = "https://..."
result = requests.get(URL)
doc = BeautifulSoup(result.text, "html.parser")
prices = doc.find_all(???)
print(prices)
在問號中,我知道我可以撰寫要查找的完整字串,但我希望每次有一個以“$”開頭的文本時都能找到它。
有可能嗎,如果可以,怎么做?
uj5u.com熱心網友回復:
用于regular expression捕獲以特定字符開頭的標簽,如下所示:
import re
from bs4 import BeautifulSoup
html = """
<p>$Show me</p>
<p>I am invisible</p>
<p>me too</p>
<p>$Show me too</p>
"""
soup = BeautifulSoup(html, 'html.parser')
result = soup.find_all("p", text=re.compile("^\$"))
# -> [<p>$Show me</p>, <p>$Show me too</p>]
請注意,我\之前使用過操作,$因為美元符號本身是一個特殊字符。有關詳細資訊,請參閱正則運算式語法。
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/418829.html
標籤:
上一篇:如何使用beautifulsoup從分頁中提取最大結果數?
下一篇:MongoDB 快速入門
