curlをWindows環境で使用する

curl というのはコマンドラインから指定した URL に対してリクエストを送ってレスポンスを取得することができるツールです。 Windows 環境で curl を利用できるようにする手順と、簡単な使い方についてのメモ書きです。

(2021 年 04 月 09 日公開 / 2021 年 04 月 09 日更新)

curlをWindowsで利用する

Windows 10 では curl が標準で利用できるようになっています。コマンドプロンプトを起動し、任意のディレクトリで次のように実行してみてください。

curl --version

curlをWindowsで利用する(1)

上記のように表示されれば curl が利用可能です。

curlの最新版をインストールする

何らかの理由で curl が利用できない状態になっていた場合、また最新のバージョンを利用したい場合には curl を別途インストールします。下記の公式サイトへアクセスしてください。

https://curl.haxx.se/

curlの最新版をインストールする(2)

画面上部の「Download」をクリックしてください。

curlの最新版をインストールする(3)

「Releases and Downloads」の画面が表示されます。

curlの最新版をインストールする(4)

今回は Windows 10 64bit の環境で利用します。 Windows 64 bit と表示されたブロックの中の、最新版のバージョンである 7.76.0 をクリックしてください。

curlの最新版をインストールする(5)

表示された画面で「curl for 64 bit」をクリックしてください。

curlの最新版をインストールする(6)

ダウンロードが開始されます。任意の場所に保存してください。

ダウンロードしたファイルは圧縮ファイルとなっています。展開して任意のフォルダの中に格納してください。

curlの最新版をインストールする(7)

これで curl のインストールは完了です。

curl を別途インストールした場合は curlをインストールしたディレクトリの下の bin ディレクトリへ Path を通すか、 bin\curl.exe を指定してコマンドを実行してください。

curlの最新版をインストールする(8)

基本的なcurlの使い方

curl コマンドを実行するときの書式は次のようになります。

curl [options] [URLs]

curl には数多くのオプションが用意されています。詳細は公式サイトの次のページを参照されてください。

curl - How To Use

基本的なcurlの使い方(1)

それでは実際の使い方です。指定した URL のリクエストを送信し、結果を画面に出力するには次のように実行します。

curl https://www.yahoo.co.jp/

基本的なcurlの使い方(2)

基本的なcurlの使い方(3)

受け取った結果をファイルに出力するには次のいずれかの書式で実行します。

curl -o filename.txt https://www.yahoo.co.jp/
curl --output filename.txt https://www.yahoo.co.jp/

基本的なcurlの使い方(4)

今回はカレントディレクトリに filename.txt というファイルが作成されて取得した結果が保存されます。

基本的なcurlの使い方(5)

基本的なcurlの使い方(6)

HTTP レスポンスヘッダだけを取得したい場合は次のいずれかの書式で実行します。

curl -I https://www.yahoo.co.jp/
curl --head https://www.yahoo.co.jp/

基本的なcurlの使い方(7)

リクエストヘッダやレスポンスヘッダなどより詳細なやり取りを取得したい場合は次のいずれかの書式で実行します。

curl -v https://www.yahoo.co.jp/
curl --verbose https://www.yahoo.co.jp/

基本的なcurlの使い方(8)

このように curl を利用することで、コマンドラインから指定の URL へリクエストを送信し、そのサイトで公開されているコンテンツやレスポンスヘッダを取得することができます。

自分のサイトに悪意のあるコードが埋め込まれた場合などに利用する

自分が運営しているサイトへの不正アクセスがあり、悪意のあるコードが埋め込まれてしまった場合、ブラウザを使って問題のある Web ページを表示するとより問題が広がってしまう場合があります。そのような場合に curl を使用すると比較的安全に問題のあるページの取得を行うことができます。

Google 社の公式サイトでも curl を使った方法について解説されています。

[セキュリティの問題] レポート - Search Console ヘルプ

基本的なcurlの使い方(1)

基本的なcurlの使い方(2)

また例えば直接サイトを見た場合は問題なくても、 Google 検索経由でサイトにアクセスがあった場合だけ不正な処理を行うような場合もあります。 curl ではリファラーやユーザーエージェントの情報を指定してリクエストを送信することができますので、問題の切り分けに利用することができます。

curl -v --referer "https://www.google.com" --user-agent "Mozilla/5.0 (Windows NT 6.3; Win64; x64; Trident/7.0; rv:11.0) like Gecko" http://www.example.com/

この場合は、 Google 検索経由で IE11 を使ってリクエストがあった場合のレスポンスを取得します。

-- --

curl を Windows 環境で利用できるようにする手順、および簡単な使い方について解説しました。

( Written by Tatsuo Ikura )

Profile
profile_img

著者 / TATSUO IKURA

初心者~中級者の方を対象としたプログラミング方法や開発環境の構築の解説を行うサイトの運営を行っています。