在本次討論中,我們探討了使用Python 抓取動態HTML 內容時遇到的一個常見問題:遇到範本佔位符實際值。具體來說,我們的目標是從使用車把模板的網頁中檢索「中位數」值。
最初,單獨使用 requests 函式庫不會產生所需的結果,因為它無法處理基於 JavaScript 的渲染頁。為了克服這個問題,我們探索了三個主要解決方案:
在我們的例子中,我們建議將 Selenium 與 BeautifulSoup 結合使用。透過使用Selenium取得渲染的HTML並使用BeautifulSoup對其進行解析,我們可以有效地存取動態HTML內容。下面是一個範例程式碼片段:
<code class="python">from bs4 import BeautifulSoup from selenium import webdriver # Get rendered HTML using Selenium driver = webdriver.Firefox() driver.get('http://eve-central.com/home/quicklook.html?typeid=34') html = driver.page_source # Parse HTML using BeautifulSoup soup = BeautifulSoup(html) # Search for specific tags, e.g., those with a "formatPrice median" class for tag in soup.find_all('formatPrice median'): median_value = tag.text</code>
這種方法使我們能夠像真正的瀏覽器一樣導航並與網頁交互,從而使我們能夠獲取必要的數據,即使它是動態加載的。
以上是如何使用 Python 的 Selenium 和 BeautifulSoup 從動態 HTML 內容中擷取值?的詳細內容。更多資訊請關注PHP中文網其他相關文章!