주요 오류는 다른 사람이 지적한 방화벽 문제 일 가능성이 큽니다. 당신은 우선 순위별로 할 httr
를 사용할 수 있습니다 더 나은 :
library(httr)
library(jsonlite)
link <- "https://data.kcg.gov.tw/dataset/7999ac19-e7dc-496a-9b7d-bd8daec107bd/resource/19d06299-a80c-42c2-a9b8-63d4466161a0/download/priceshistory_20160101-20161231.json"
연결, 여기, 나를 위해 일하지만 데이터 (나는이 대답을 게시 주된 이유입니다) 몇 가지 문제가 있습니다
kh <- jsonlite::fromJSON(json_url)
## Error in parse_con(txt, bigint_as_char) :
## lexical error: invalid char in json text.
## [ { "result":{ "
## (right here) ------^
## In addition: Warning message:
## JSON string contains (illegal) UTF8 byte-order-mark!
가
그 오류는 BOM이 제거되지 않았다는 것을 의미합니다 (그 때해야합니다). 여기
당신이 조금
httr::GET()
를 사용하여 연결 우선 순위별로 할 수있는 방법 :
httr::GET(
link,
progress(), # it's a 13MB file on a slow connection for North America, so this helps
verbose() # this lets you see the connection info to make sure nothing is wrong
) -> res
나는 자세한 출력을 붙여 아니에요, 그래서 이것은 오류가 없었다,하지만 당신은 자세한 출력을보고 볼 수 어떤 HTTP 오류가 나타나는지. 프록시/방화벽 문제를 진단하는 데 도움이 될 수 있습니다. 최신 curl
및 httr
패키지를 사용하면 Windows OS와 함께 더 멋지게 사용할 수 있습니다.
돌아 가기 여전히 가능성이 당신을 위해 문제가 될 것입니다 BOM을 문제에
:
hk_raw <- httr::content(res, as="raw")
hk_raw[1:10]
## [1] ef bb bf ef bb bf 5b 0a 20 20
가 UTF-8 BOM 순서가 2 배가 이유를 잘 모르겠어요,하지만 다루기 쉽다 완벽에 읽어 보시기 바랍니다.
당신은 관리자 권한으로 실행하고 있습니까
그건 당신에게 데이터 구조를 제공한다 (및 처리 될 필요가있을 것이다)? – JARO
URL에 특수 문자가있을 수 있습니다. 이 질문을 확인하십시오 https://stackoverflow.com/questions/42739594/r-jsonlite-fromjson-always-returns-error-in-open-connection – Barbara
이 방화벽을 사용하려면 https : //를 참조하십시오. support.rstudio.com/hc/en-us/articles/200488488-Configuring-R-to-Use-an-HTTP- 또는 -HTTPS-Proxy – amrrs