« [R]文字列を特定の文字または文字列で分割する | トップページ | [R]tibbleから条件に一致する行を抜き出す »

2023年9月 7日 (木)

[R]プロキシを設定する(Windows版)

学校や職場でネットワークにプロキシが設定されている場合、パッケージのインストールがうまくいかないことがある。例えば、magickパッケージをインストールしてみる。

> install.packages("magick")
パッケージを ‘C:/Users/○○○’ 中にインストールします
(‘lib’ が指定されていないため)
--- このセッションで使うために、CRAN のミラーサイトを選んでください ---
警告: failed to download mirrors file ( URL 'https://cran.r-project.org/CRAN_mirrors.csv' を開けません ); using local file '○○○/CRAN_mirrors.csv'
警告: リポジトリー https://○○○/pub/cran/src/contrib に対する索引にアクセスできません :
URL 'https://○○○/pub/cran/src/contrib/PACKAGES' を開けません

ミラーサイト選択のダイアログ表示まで10秒以上待たされ、選択後に30秒以上経過して「~に対する索引にアクセスできません」と表示された場合は、プロキシに接続しようとして失敗している可能性が高い。

このような状態では、curlGetHeaders関数でhttp://www.google.co.jpのヘッダーを読み取ると、以下のようなエラーが生じるはず。

> curlGetHeaders("http://www.google.co.jp")
curlGetHeaders("http://www.google.co.jp") でエラー:
libcurl error code ○:
Failed to connect to www.google.co.jp port ○ after ○ ms: Couldn't connect to server

プロキシの設定を正しく行うことで解決できる。

「コントロールパネル」→「ユーザーアカウント」→左側メニュー「環境変数の変更」。

上のユーザー環境変数に、以下の2つの環境変数を設定する。ここでプロキシのアカウント名はnamae、そのパスワードはpasu。プロキシサーバーのアドレスはproxy.company.co.jp、そのポートは1234としている。2つ目のHTTPS_PROXYは「http:~」であることに注意。

HTTP_PROXY

http://namae:pasu@proxy.company.co.jp:1234
HTTPS_PROXY

http://namae:pasu@proxy.company.co.jp:1234

設定後に、Rを再起動してcurlGetHeaders関数でhttp://www.google.co.jpのヘッダーを取得してみる。

> curlGetHeaders("http://www.google.co.jp")
[1] "HTTP/1.0 200 OK\r\n"
(以下、表示省略)

上記のように表示されればプロキシの設定は成功。install.packages関数でパッケージのインストールが出来るようになるはず。

以下のように表示された場合は、アカウント名やパスワードの設定を間違えている可能性が高い。

> curlGetHeaders("http://www.google.co.jp")
[1] "HTTP/1.0 407 Proxy Authentication Required\r\n"
(表示省略)

« [R]文字列を特定の文字または文字列で分割する | トップページ | [R]tibbleから条件に一致する行を抜き出す »

R(インターネット)」カテゴリの記事

コメント

コメントを書く

コメントは記事投稿者が公開するまで表示されません。

(ウェブ上には掲載しません)

« [R]文字列を特定の文字または文字列で分割する | トップページ | [R]tibbleから条件に一致する行を抜き出す »