【发布时间】:2019-02-20 08:54:00
【问题描述】:
我正在尝试在 R 中为 flightradar 上的特定机场抓取数据,例如,https://www.flightradar24.com/data/airports/axa。
具体来说,我想抓取到达和离开表的内容并将它们存储在数据框中。看起来很简单,但表格的内容不是 html 页面源代码。
我尝试在 Chrome 上使用 css 选择器,并使用 rvest 函数确定了适当的 css 选择器,但它不会为我提供正确的结果。例如,在尝试使用 tr td 作为 css 选择器来节省时间时,我尝试过:
library(rvest)
webpage <- read_html("https://www.flightradar24.com/data/airports/axa")
time <- html_nodes(webpage, "tr td") %>% html_text()
head(time)
[1]“正在加载...”
[2]“抱歉,我们没有关于此机场航班的任何信息”
[3] " {{objFlight.flight.status.generic.eventTime.utc * 1000 || '' | 日期:timeFormat: timeZone}} {{objFlight.flight.time.scheduled.arrival * 1000 || '-' |日期:timeFormat:timeZone}} {{objFlight.flight.identification.number.default}} {{objFlight.flight.airport.origin.position.region.city}}({{objFlight.flight.airport.origin.code. iata}}) {{objFlight.flight.aircraft.model.code || '-'}}{{objFlight.flight.aircraft.registration}}{{objFlight.flight.airline.name}} -" [4] "{{objFlight.flight.time.scheduled.arrival * 1000 || '-' | 日期: timeFormat : timeZone}}"
[5] "{{objFlight.flight.identification.number.default}}"
[6]“{{objFlight.flight.airport.origin.position.region.city}}({{objFlight.flight.airport.origin.code.iata}})-”
显然,结果并不理想,因为它应该是航班实际时间的列表。我不知道从这里去哪里。
感谢任何帮助。
【问题讨论】:
-
在浏览器中打开开发者工具。刷新页面。您会看到 “Welcome to axa \n 请注意,抓取或任何其他形式的自动数据下载违反了我们的服务条款 (flightradar24.com/terms-and-conditions),并可能导致无法访问 Flightradar24。\n 请如果您希望访问我们的数据服务,请联系 business@fr24.com。”。任何帮助您的人都可能会因此而面临风险(这并不酷)。您现在已经收到一封电子邮件,可用于查看您是否可以合法访问数据服务。
-
感谢您向我指出这一点,我没有看到。在继续之前,我会确保联系他们的服务。
标签: html r web-scraping rvest