You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用rvest爬取加德满都AQI预报表返回NA值求助

解决AQI预报表爬取返回NA的问题

你的代码存在几个关键问题,导致无法正确提取目标表格:

  • 管道符书写错误:%> 应改为 %>%
  • 元素选择器不准确:div.section-content 并非AQI预报表所在容器,实际预报表格是带有class="aqi-forecast-table"的<table>元素
  • 内容提取方式错误:直接使用html_text()仅会提取纯文本,无法解析表格的结构化数据

修正后的可运行代码如下:

# Load required packages
library(rvest)
library(dplyr)

# Define the URL
url <- "https://aqicn.org/city/kathmandu"

# Read the HTML content of the page
webpage <- read_html(url)

# Extract AQI forecast table
forecast_table <- webpage %>%
  html_element("table.aqi-forecast-table") %>%  # 精准定位目标表格节点
  html_table(header = TRUE) %>%  # 将表格解析为结构化数据框
  as_tibble()  # 转换为tibble格式

print(forecast_table)

补充说明

  • html_element("table.aqi-forecast-table") 可以精准定位到AQI预报表格,避免选中页面其他无关内容
  • html_table(header = TRUE) 会自动识别表格表头,将HTML表格转换为可直接使用的数据框
  • 目前该页面的AQI预报表是静态HTML渲染的,上述代码即可正常提取;若后续页面改为动态JS加载,可尝试结合RSelenium或V8工具处理动态内容

内容的提问来源于stack exchange,提问作者Bishal Giri

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.13 20:43:10