0

我正在尝试在我的 R 项目中使用目标工作流。我正在尝试使用 dataRetrieval 包下载水质数据。在新的 R 会话中,这有效:

dataRetrieval::readWQPdata(siteid="USGS-04024315",characteristicName="pH")

要在目标中使用它,我有以下 _targets.R 文件:

library(targets)

tar_option_set(packages = c("dataRetrieval"))

list(
  tar_target(
    name = wqp_data,
    command = readWQPdata(siteid="USGS-04024315",characteristicName="pH"),
    format = "feather",
    cue = tar_cue(mode = "never")
  )
)

当我运行tar_make()以下返回:

* start target wqp_data
No internet connection.
The following url returned no data:

https://www.waterqualitydata.us/data/Result/search?siteid=USGS-04024315&characteristicName=pH&zip=yes&mimeType=tsv
x error target wqp_data
* end pipeline
Error : attempt to set an attribute on NULL
Error: callr subprocess failed: attempt to set an attribute on NULL
Visit https://books.ropensci.org/targets/debugging.html for debugging advice.
Run `rlang::last_error()` to see where the error occurred.

我尝试使用tar_option_set(debug = "wqp_data")or进行调试,tar_option_set(workspace_on_error = TRUE)但在将错误隔离为readWQPdata()没有得到任何地方之外。

我在目标中直接使用 curl 也取得了成功,所以我认为这不是我的实际互联网连接:

list(
  tar_target(
    name = wqp_data,
    command = {con <- curl::curl("https://httpbin.org/get")
    readLines(con)
    close(con)}
  )
)

tar_make()
* start target wqp_data
* built target wqp_data
* end pipeline

在使用这两个软件包时如何诊断连接问题有什么建议吗?

4

0 回答 0