Ю
Size: a a a
Ю
KF
S
ВК
ВК
Ю
ВК
O
Ю
АК
read_soap <- function(file_path) {
file_enc <- uchardet::detect_file_enc(file_path)
file_con <- file(file_path, encoding = file_enc)
file_cnt <- readLines(file_con)
file_idx <- grep("</?s:Envelope", file_cnt)
file_cnt <- file_cnt[file_idx[1]:file_idx[2]]
file_cnt <- paste(file_cnt, collapse = "\n")
file_cnt <- textutils::HTMLdecode(file_cnt)
xml_doc <- xml2::read_xml(file_cnt)
x <- xml2::xml_find_all(xml_doc, "//d1:dane")
x <- lapply(xml2::as_list(x), unlist, recursive = FALSE)
x <- data.table::rbindlist(x, fill = TRUE)
x <- type.convert(x, as.is = TRUE)
chr_cols <- names(x)[sapply(x, is.character)]
x[, (chr_cols) := lapply(.SD, stringi::stri_replace_all, regex = "[^[:alnum:]]", replacement = " "), .SDcols = chr_cols]
return(x[])
}
> str(read_soap(file_path))
Classes 'data.table' and 'data.frame': 19 obs. of 12 variables:
$ Regon : int 930077876 221746501 222087816 810158487 302720427 222064525 220610509 220647576 241316104 951079548 ...
$ Nip : num 8960004952 NA 5552107721 8550013822 6191945268 ...
$ Nazwa : chr "4 REGIONALNA BAZA LOGISTYCZNA" "NIEPUBLICZNY PUNKT PRZEDSZKOLNY WESOA E A ABKI " "KPT SPA A KA Z OGRANICZONÄ ODPOWIEDZIALNOA CIÄ " "POA REDNICTWO HANDLOWE Iwona Baran" ...
$ Wojewodztwo : chr "DOLNOA LÄ SKIE" "POMORSKIE" "POMORSKIE" "ZACHODNIOPOMORSKIE" ...
$ Powiat : chr "WrocA aw" "kartuski" "chojnicki" "A winoujA cie" ...
$ Gmina : chr "WrocA aw Krzyki" "A ukowo" "Chojnice" "A winoujA cie" ...
$ Miejscowosc : chr "WrocA aw" "Glincz" "Chojnice" "A winoujA cie" ...
$ KodPocztowy : chr "50 984" "83 330" "89 600" "72 602" ...
$ Ulica : chr "ul Bernarda Pretficza" "ul Brzozowa" "ul 31 Stycznia" "ul FiA ska" ...
$ NrNieruchomosci: chr "28" "6" "30" "4" ...
$ Typ : chr "P" "P" "P" "F" ...
$ SilosID : int 6 6 6 1 1 1 6 6 1 1 ...
ВК
S
Ю
Ю
ВК
Ю
ВК
Ю
ВК
Ю