あなたの主なエラーは、他の人が指摘しているファイアウォールの問題です。あなたがより良いトリアージする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倍あり、なぜ私はわからないんだけど、それは対処するのは簡単です(とに対処する必要があります)
hk <- jsonlite::fromJSON(rawToChar(hk_raw[-(1:6)]))
であなたに完全に読み込まれたデータ構造を与える必要があること。
あなたは管理者として実行していますか? – 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