从R中的url下载gz json文件

flmtquvp  于 2022-12-06  发布在  其他
关注(0)|答案(1)|浏览(172)
lien_du_cadastre<-str_replace_all(paste("https://france-cadastre.fr/cadastre/",Nom_ville), " ","")
lien_du_cadastre
serveur_objet$navigate(lien_du_cadastre)

url2=serveur_objet$findElement(using = 'xpath','/html/body/div[4]/div[3]/div[1]/div[4]/div/div[3]/div[2]/div/a[1]')$getElementAttribute("href")[[1]] #donne l'url de téléchargement du plan cadastre
url2 (the url inside is : https://france-cadastre.fr/downloadcenter.php?format=json&echelle=commune&insee=02408&type=parcelles)
file_path <- tempfile(pattern = "", fileext = ".json")
file_path
download.file(url2, file_path, quiet = TRUE, mode = "wb")

你好,我试图从这个网站下载一个文件后得到的网址,但下载的文件是损坏的,因为当我试图打开它,我看到二进制和字符,而不是json文件的内容。我试图手动下载它,并通过这种方式显示真实的的内容。我不知道我的使用下载。文件功能是坏的,我没有成功地修复它,因为。

n6lpvg4x

n6lpvg4x1#

jsonlite包有parse_gzjson_raw()函数来读取gzip压缩的数据。首先你需要把数据作为一个原始向量读入R。

library(jsonlite)

url <- "https://france-cadastre.fr/downloadcenter.php?format=json&echelle=commune&insee=02408&type=parcelles"

dat <- readBin(url, "raw", 1e07)  # Or readr::read_file_raw(url)
res <- parse_gzjson_raw(dat)

检查数据:

str(res)

List of 2
 $ type    : chr "FeatureCollection"
 $ features:'data.frame':   12405 obs. of  4 variables:
  ..$ type      : chr [1:12405] "Feature" "Feature" "Feature" "Feature" ...
  ..$ id        : chr [1:12405] "02408000AB0133" "02408000AB0132" "02408000AB0131" "02408000AB0129" ...
  ..$ geometry  :'data.frame':  12405 obs. of  2 variables:
  .. ..$ type       : chr [1:12405] "Polygon" "Polygon" "Polygon" "Polygon" ...
  .. ..$ coordinates:List of 12405
  .. .. ..$ : num [1, 1:12, 1:2] 3.63 3.63 3.63 3.62 3.63 ...
  .. .. ..$ : num [1, 1:9, 1:2] 3.63 3.62 3.62 3.62 3.62 ...
  .. .. ..$ : num [1, 1:17, 1:2] 3.62 3.62 3.62 3.62 3.62 ...
...

相关问题