2016-08-11 12 views
1

私は&を読んで、動物の避難所で動物の条件のリストを得るために少しのHTMLを解析しようとしています。私はHTMLパースで経験していないことが助けにはならないと確信していますが、私はどこにいなくなっているようです。ここでR HTMLをリストに読み込んで構文解析する

は、HTMLの抜粋です:

<select multiple="true" name="asilomarCondition" id="asilomarCondition"> 

    <option value="101"> 
     Behavior- Aggression, Confrontational-Toward People (mild) 
     - 
     TM</option> 
.... 
</select> 

は一つだけ<select...>とタグと残りはすべて<option value=x>あります。

私はXMLライブラリを使用しています。私は、改行やタブを削除することができますが、タグを削除任意の成功を持っていなかった。

conditions.html <- paste(readLines("Data/evalconditions.txt"), collapse="\n") 
conditions.text <- gsub('[\t\n]',"",conditions.html) 

最終的な結果として、私は私が後で使用するためにさらに処理できるという条件のすべてのリストが欲しいです因子名など:

Behavior- Aggression, Confrontational-Toward People (mild)-TM 
Behavior- Aggression, Confrontational-Toward People (moderate/severe)-UU 
... 

は私がXMLライブラリ(または別のライブラリ)を使用する必要があるかはわからないかgsubパターンが十分である場合には(いずれかの方法で、私はそれを使用する方法を考え出す必要があります) 。

library(rvest) 
#read the html page 
page<-read_html("test.html") 
#get the text from the "option" nodes and then trim the whitespace 
nodes<-trimws(html_text(html_nodes(page, "option"))) 

#nodes will need additional clean up to remove the excessive spaces 
#and newline characters 
nodes<-gsub("\n", "", nodes) 
nodes<-gsub(" ", "", nodes) 

ベクトルノードを使用して、要求された結果のようになります。

+0

その選択ボックスで完全なURLを指すことができますか、少しスニペットを展開できますか? – hrbrmstr

+3

rvestパッケージが使いやすくなっています。あなたがウェブサイトへのリンクを提供することができれば、誰かがあなたの解決策をコードすることができます。 – Dave2e

+0

これはHTMLです。それは@alistaireの形式の選択リストです – hrbrmstr

答えて

1

はここrvestパッケージを使用してスタートです。この例は上記で提供された限られたサンプルに基づいており、実際のページに予期しない結果が生じることがあります。

+0

ありがとう、@ Dave2e!これは完全に機能しました!私はクリーンアップするいくつかの追加文字を持っていたが、それはあなたの例では簡単でした。データクリーニングの残りの部分に! :o – kimbekaw

関連する問題