これは、HTMLセレクタとCSSセレクタを扱う私の最初の試みです。私はBillboard Top 100のウェブサイトをスクラップするためにRパッケージrvestを使用しています。私が興味を持っているデータには、今週のランク、歌、天気などが含まれています。曲はNewで、天気かどうかは賞がありません。R rvestでhtmlで読む。 CSSセレクタークラスに何が含まれているかどうかを確認するにはどうすればよいですか?
私は次のように曲の名前とランクを取得することができています:
library(rvest)
URL <- "http://www.billboard.com/charts/hot-100/2017-09-30"
webpage <- read_html(URL)
current_week_rank <- html_nodes(webpage, '.chart-row__current-week')
current_week_rank <- as.numeric(html_text(current_week_rank))
私の問題は、新しい賞のインジケータが付いています。曲はに含まれている100のそれぞれを持つ行に記載されています:曲が、賞を持っている場合
:曲が新しい場合
<article> class="chart-row char-row--1 js chart-row" ....
</article>
、これは次のようにその中のクラスを持っていますその中で、このクラスになります:「チャート行の文字列 - 1つのJSチャート行を」
<div class="chart-row__award-indicator">
は、私はクラス=のすべての100個のインスタンスを見ることができる方法はある...と見ますこれらのいずれかがその中に存在する場合、 current_week_rankから得られる出力は、100個の値の1つの列です。私は、これを取得して各曲に1つの観測を持たせる方法があることを期待しています。
ご協力いただきありがとうございます。
例のURLを共有してください。完全にはっきりしません。 eページの構造。 – MichaelChirico
@MichaelChirico URLはhttp://www.billboard.com/charts/hot-100/2017-09-30 – Jorge
です。あなたは '...%>%html_attr( 'class')'を試すことができます。タグのクラスの文字ベクトル。次に、特定のcssクラス名が文字列内にあるかどうかを確認します。 – kitman0804