Skip to content

在 RStudio 檢視 xml/html 的工具:xmlview Package

感謝我們的工作人員–呂奕,給了一篇文章介紹爬蟲用的新套件, 轉貼網址:http://leoluyi.logdown.com/posts/432582-xmlview-package

在寫爬蟲的過程中,常需要針對取得的 html 檢查內容,並用 XPath 或 CSS selector 擷取所需要的資料區塊。但在使用 IDE 撰寫腳本時,要做到這些事必須要把 html 的文本內容 print 出來,或是另存成 html file 再用瀏覽器檢視;若測試 XPath 時,因無法很清楚地直接在 console 瀏覽 xml 的樹狀結構,所以原本需搭配 Chrome 的 XPath Helper 會比較方便。

xmlview package 提供了一個在 RStudio 上互動檢視 XML 以及測試 XPath 的方式,這裡用個簡單的 XML 當例子:

利用 xml_view 這個函數吃進 XML string,即可得到 Parsed 後的顯示,

xml_view_test

XPath 測試

用 PTT 的隨便一篇文章當範例,先把網頁的內容抓 下來,並用 read_html 做成xml_document 物件:

由於 read_html 會自動將內容轉換成 unmarked UTF-8 encoding,經測試吃進時xml_view無法顯示,所以必須先轉換成 marked UTF-8 encoding 或 system locale (e.g., Big5) 才能正確顯示,因此這裡先把 xml_document 直接轉成character 後再調整 encoding,

 

xml_view_ptt_result

吃進去 xml_view 後,在 RStudio 的 Viewer pane 顯示了剛才的網頁內容,因為加了add_filter=TRUE 這個參數,因此上方出現了 XPath 的輸入框,輸入想測試的 XPath expression 後直接按 enter 就會馬上跑出結果,還可以按下”R”的圖示自動產生 R code 可直接複製貼上。

xml_view_ptt_xpath

最後就得到想要的資料了!

 

只是在 Windows 的 encoding 問題還是要再處理一下,

 

Share the joy
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  

Recent Posts

Recent Comments

Archives

Categories

Meta

Ben Written by:

Be First to Comment

Leave a Reply

Your email address will not be published. Required fields are marked *

Skip to toolbar