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

使用R自动化下载GADM数据(level 0)遇服务器维护报错求助

解决GADM数据自动化下载区域限制问题

首先纠正代码里的笔误:你写的lapplyy是拼写错误,应该改为lapply,这个小错误可能引发额外异常。

针对你怀疑的区域访问限制问题,给出以下可行解决办法:

  • 切换替代数据源
    geodata包支持多数据源,默认GADM服务器访问受限时,可切换到geoboundaries数据源,它同样提供高精度行政边界数据,用法和原代码几乎一致:

    # 修正笔误+切换数据源的代码
    gadm_list <- lapply(iso3, function(x){
      tryCatch({
        geodata::gadm(country = x, level = 0, path = tempdir(), source = "geoboundaries")
      }, error = function(e){
        message(paste("Skipping country due to error:", e$message))
        return(NULL)
      })
    })
    
  • 批量导入手动下载的文件
    既然你已能手动下载数据,可将所有GADM文件(通常为.gpkg格式)放在同一文件夹,用以下代码批量导入:

    # 设置手动下载文件的存放路径
    data_path <- "你的文件存放路径"
    # 获取所有gpkg格式文件
    gadm_files <- list.files(data_path, pattern = "\\.gpkg$", full.names = TRUE)
    # 批量导入数据
    gadm_list <- lapply(gadm_files, function(file){
      sf::st_read(file, quiet = TRUE)
    })
    
  • 配置网络代理
    如果是所在区域网络限制导致无法访问GADM服务器,可在R中配置代理:

    # 替换为你的代理地址和端口
    library(httr)
    set_config(use_proxy(host = "你的代理IP", port = 代理端口))
    # 配置完成后执行原下载代码
    
  • 更新geodata包到最新版本
    旧版本geodata包可能存在服务器地址未更新的问题,执行以下命令更新:

    update.packages("geodata")
    

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.15 08:28:15