私はフィラデルフィア国際空港の到着予定(そして最終的に出発も同様に)を得るために、 'http://www.phl.org/Pages/Flight-Information.aspx#/Arrivals'ウェブページをスクラップしようとしています。これは私がこれまでに書いたコードです:ウェブを掻き集めるaspxウェブページR
require("rvest")
require("dplyr")
url1 <- "http://www.phl.org/Pages/Flight-Information.aspx#/Arrivals"
url2 <- '//*[@id="ctl00_pageWrapper"]/main/div[3]/table'
Trial_data <- url1 %>% read_html() %>% html_nodes(xpath=url2) %>% html_table() %>% data.frame()
はしかし、これが唯一のテーブルのヘッダではなく、テーブルのデータ自体を削ります。私はウェブサイトのHTMLコードからウェブページ要素を調べ、スクリプトにXpathを使用しました。試行錯誤しながら、私はウィキペディアのテーブルを掻き集めるために同じコードを使いました。問題は.aspxのWebページにあると感じています。
本当にこれについての助けに感謝します!
AngularJsを使用してテーブルの内容が動的に読み込まれるため、このデータは実行せずにAJAX呼び出しの結果を最初に取得すると利用できない場合があります。 – kieraf
rvestはHTMLを取得するだけなので、データはロードされません。 RSeleniumを使用してページをロードし(プロセスで必要なスクリプトを実行して)、解析して返すことができますが、それ以上の作業です。この特定のデータがあれば、この同じデータをより使いやすい形式で公開するAPIがあると確信しています。そのため、検索のほうが次の段階になる可能性があります。 – alistaire
[ここにAPIがあります](https://github.com/CityOfPhiladelphia/phl-airport-data) – alistaire