內容擷取器
在前面的練習中,你已經確認給你的 URLs 向量裡的所有元素都回傳 200 狀態碼。既然知道它們可存取,接下來要更進一步做網頁擷取,進行內容抽取。
為了達成這件事,我們會使用 rvest 套件的函式,並搭配 partial() 預先填入參數。我們在這題會寫的函式,會從頁面中擷取所有 H2 HTML 節點——在網頁上,這些 H2 節點就是第 2 層標題。擷取到這些標題後,會用 html_text() 從原始 HTML 中抽出文字內容。
已為你載入 purrr 與 rvest,而且工作環境中已有 urls 向量可用。
本練習屬於課程
使用 purrr 的 R 語言中級函式程式設計
練習說明
先用
partial()預先填入html_nodes()的參數css = "h2"。將這個新建立的函式,與
read_html和html_text以compose()串接,建立一個用來擷取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
___