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

使用rvest爬取ClinicalTrials.gov数据表的CSS选择器问题

问题描述

需爬取ClinicalTrials.gov指定搜索结果页展示的临床试验结果列表,目标页面地址为:
https://clinicaltrials.gov/ct2/results?term=nivolumab+AND+Overall+Survival
已编写的R代码因CSS选择器配置错误,无法正确提取目标表格,原代码如下:

# create custom url
ctgov_url <- "https://clinicaltrials.gov/ct2/results?term=nivolumab+AND+Overall+Survival"
# read HTML page
ct_page <- rvest::read_html(ctgov_url)

# extract related terms
ct_page %>%
  # find elements that match a css selector
  rvest::html_element("t") %>%
  # retrieve text from element (html_text() is much faster than html_text2())
  rvest::html_table()
错误原因
  • 原代码传入html_element()的选择器t无效,HTML标准中不存在<t>标签,无法匹配到页面内的表格元素。
  • 该页面的搜索结果列表存储在id属性为theDataTable的<table>标签内,原选择器未定位到正确元素。
修正后代码
library(rvest)
library(magrittr)

# 构造目标访问链接
ctgov_url <- "https://clinicaltrials.gov/ct2/results?term=nivolumab+AND+Overall+Survival"
# 读取页面HTML内容
ct_page <- read_html(ctgov_url)

# 解析提取临床试验结果表格
trial_result_table <- ct_page %>%
  # 匹配id为theDataTable的表格元素
  html_element(css = "table#theDataTable") %>%
  # 将HTML表格解析为R数据框
  html_table()

提示:该页面默认仅展示前10条分页结果,若需获取全量搜索结果,可调整URL中的分页参数,或使用平台官方开放的API接口拉取数据,避免爬取逻辑被分页拦截。

内容的提问来源于stack exchange,提问作者Howard Baik

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.29 16:03:31