開始使用免費開始

內容擷取器

在前面的練習中,你已經確認給你的 URLs 向量裡的所有元素都回傳 200 狀態碼。既然知道它們可存取,接下來要更進一步做網頁擷取,進行內容抽取。

為了達成這件事,我們會使用 rvest 套件的函式,並搭配 partial() 預先填入參數。我們在這題會寫的函式,會從頁面中擷取所有 H2 HTML 節點——在網頁上,這些 H2 節點就是第 2 層標題。擷取到這些標題後,會用 html_text() 從原始 HTML 中抽出文字內容。

已為你載入 purrrrvest,而且工作環境中已有 urls 向量可用。

本練習屬於課程

使用 purrr 的 R 語言中級函式程式設計

檢視課程

練習說明

  • 先用 partial() 預先填入 html_nodes() 的參數 css = "h2"

  • 將這個新建立的函式,與 read_htmlhtml_textcompose() 串接,建立一個用來擷取 H2 標題文字的抽取器。

  • urls 向量上執行這個函式,並把結果指派名稱。

  • 印出結果,看看長什麼樣子。

動手互動練習

試著完成這個範例程式碼,體驗一下這個練習。

# Prefill html_nodes() with the css param set to h2
get_h2 <- ___(html_nodes, ___)

# Combine the html_text, get_h2 and read_html functions
get_content <- ___(___, ___, ___)

# Map get_content to the urls list
res <- ___(urls, ___) %>%
  set_names(___)

# Print the results to the console
___
編輯並執行程式碼