頑張らない!でも諦めない!必死にならずにええかげん

Windows®環境にcURLコマンドを実行できるようにインストールする手順

      2014/11/22

Windowsを利用しているとネット上で見かける情報がそのまま利用できない場合もあります。
今回のWindows上でcURLコマンドの実行した際に「< の使い方が誤っています。」という
エラーに出会ったこともそんなケースの一つです。

ここではWindows環境でcURLコマンドが実行できるようにインストールを行って、
実際に実行する手順をご紹介します。

はじめに

「cURL」私はこれまでこうしたコマンドラインツールが存在していることは、
各種プラグインの検証時に接していたため、知ってはいたものの深追いをしていませんでした。

WordTwitの利用と導入(wordpressプラグイン)#Disable CURL support

しかし今回、JetPackデバッガのデバッグ過程でcURLに触れる機会がありましたので、
しぶしぶですがcURLのインストールと実行環境を用意しました。

その手順をご紹介しておきます。

環境

cURLのダウンロード

cURLのダウンロードを行うにはcURLのサイトにアクセスしダウンロードを行います。
curl and libcurl

cURLサイトにアクセスしたらサイドメニューのDownloadをクリックします。

01_cURLサイト

cURLサイト

ダウンロードページが開いたらスクロールし下部のほうに表示された、
Win32 – Generic/Win64 – Genericに表示されているcURLをダウンロードします。

02_cURLダウンロード・Windows版

cURLダウンロード・Windows版

今回は確認のため以下のファイルをダウンロードしています。
この辺は、SSLが必要であればSSLが含まれているものなど適宜選択してください。

curl-7.33.0-win64-ssl-sspi / curl-7.33.0-win64-nossl

03_cURL・Windows-win32

cURL・Windows-win32

curl-7.34.0-ssl-sspi-zlib-static-bin-w32

04_cURL・Windows-win64

cURL・Windows-win64

ダウンロードを行ったらzipファイルが保存されます。
zipファイルを解凍します。

05_ダウンロードと展開

ダウンロードと展開

cドライブなどにコピーしてインストールは完了です。
フォルダ名は適宜変更します。

06_cURLのインストール

cURLのインストール

コマンドプロンプトでインストールしたディレクトリ(フォルダ)に移動せず実行したい場合には、
環境変数PATHにインストールしたディレクトリを登録してください。
Windows7で環境変数PATHを設定する手順

cURLコマンドの実行

インストールしたcURLでコマンドを実行します。

インストールの確認とヘルプの表示

ここでは「C:\curlx64-nossl」に対してcurlを保存しています。
実行の確認を行うために、cURLのマニュアルを確認してみます。

ざっとヘルプの内容が表示され、確認できます。

07_cURLヘルプの確認

cURLヘルプの確認

さすがに見にくいので、テキストファイルにでも落として読んでください。
ヘルプの内容を「c:\curl_help.txt」に出力し保存しています。

保存したテキストファイルを確認することで、オプションなどを確認することができます。

cURLで実際にサイトにアクセスしてみます。

cURLによるサイトアクセス

curlでコマンドに表示したいURLを続けて入力して利用します。

当然ですが、SSLに対応していないcURL(curl-7.33.0-win64-nossl)を
ダウンロードしてインストールしている場合には、
https://…で始まるURLを入力した場合には以下のようにエラーになります。

コマンドプロンプト画面

08_cURL-nosslによるSSLサイト指定エラー

cURL-nosslによるSSLサイト指定エラー

SSLに対応しているcURL(curl-7.33.0-win64-ssl-sspi)を
ダウンロードしてインストールしている場合には、
https://…で始まるURLを入力するとアクセスは行えますが以下のようにエラーになります

コマンドプロンプト画面

09_cURL-sslによるSSLサイト指定エラー

cURL-sslによるSSLサイト指定エラー

これは証明書の検証に失敗しているといった情報のメッセージが表示されています。
とにかく実行したいという場合には、「-k (or –insecure) option」を利用すると書かれていますので、
-k (or –insecure) optionを付加して実行します。

コマンドプロンプト画面

10_cURL-sslによるSSLサイト--nosecure

cURL-sslによるSSLサイト–nosecure

このcURLによってレスポンスを受け取った内容は、
https://www.google.co.jp/ のHTMLソースです。

11_google.co.jpブラウザアクセスとソース

google.co.jpブラウザアクセスとソース

このようにしてcURLを利用することによってプログラムなどからサイトのソースを取得し、
サイト巡回を行ったりといったことができるようになります。

Windowsにて利用する場合の注意点

cURLを利用するうえでは、サイト側に対して、
POSTデータを送信した結果を受け取ったりという制御を行うことができます。

前回の投稿でご紹介したJetPackデバッガで提供されるサンプルソースなどがその例です。
JetPack by WordPress.comインストール後にダッシュボードからデバッグ情報を確認

投稿に追記をすでに行っていますが、JetPackデバッガからは以下のようなコマンドが例示されます。

c:\curl>curl -d '<methodCall><methodName>demo.sayHello</methodName></methodCall>
' http://algorhythnn.jp/blg/wp/xmlrpc.php

しかしこのコマンドはWindows上では実行できません。

08_デバッガ例示コマンドの実行

デバッガ例示コマンドの実行

このコマンドは -dスイッチによって、’ ~ ‘ 間のデータを指定したURLに対してPOST送信を行って、
レスポンスを受け取るものですが、’ ~ ‘ 間のデータが正しくデータとして認識されません。

結果として「< の使い方が誤っています。」というエラーになります。

この場合Windows環境では -d スイッチの後のデータ部を以下のように送信します。
シングルクォートをダブルクォートに変更します。

c:\curl>curl -d "<methodCall><methodName>demo.sayHello</methodName></methodCall>
" http://algorhythnn.jp/blg/wp/xmlrpc.php

コマンドが正しく実行されレスポンスを受け取ることができるようになります。

09_デバッガ例示コマンドの「"」改変実行

デバッガ例示コマンドの「”」改変実行

プロモーション(btm)

Google or AdMax Promotion (it)

さいごに

このようにしてcURLをインストールすることで、Web上のサイトデータなどをプログラム的な方法で、
アクセスしデータを取得することができるようになります。

cURLには非常に多くの機能がありますので、
cURL – How To Use (マニュアルページ日本語訳)などでその他の機能などは確認されるといいでしょう。

参考

 さんのサイトはいつもすっきりとまとまっていてわかりやすいなと思います。
よくリンクさせていただいています^^

基本的な手順はIkuraさんのサイトのままですが、
x64環境であること、実行時のデータ指定方法に注意が必要なことを補足するために本投稿を作成しております。

cURLのコマンドライン実行環境 – buzzword update


Windows は米国 Microsoft Corporation の米国およびその他の国における登録商標です。
登録番号は以下の通りです。
第3333588号、第3351402号、第4197799号、
第4348387号、第4395963号、第4648301号
Windows は米国 Microsoft Corporation の米国およびその他の国における国際登録商標です。
国際登録番号:1135413

*本ページ内に記載されされた各社ブランド、サービス名、商標、登録商標については、
各社ブランドのロゴや商標等に関する帰属についてをご確認ください


最後までお読みいただきありがとうございました。

アイキャッチ画像に利用させて頂いております、各社ブランドのロゴやシンボルに関しては、
各社ブランドのロゴや商標等に関する帰属についてをご確認頂けますようお願い致します。

AdMax Promotion

ブログ記事のご紹介
すべて展開 | すべて省略

Rakuten Promotion

ページ
すべて展開 | すべて省略

 - windows

Comment

  1. […] Windows®環境にcURLコマンドを実行できるようにインストールする手順 | ええかげんブログ(本店) […]

  関連記事

eye_apache_fcgi
(mod_fcgid on 2.0.x)windowsでCGIをFastCGIで実行するように設定したかった

Google or AdMax Promotion(it) 禁断の機能がau公式 …

eye_programing
VBScript でもデバッグしながら開発を行える

Google or AdMax Promotion(it) 禁断の機能がau公式 …

eye_windows
ファイル名の一覧を書き出す方法(windows)

Google or AdMax Promotion(it) 禁断の機能がau公式 …

eye_apache_fcgi
PHPをmod_fcgidやmod_fastcgiでFastCGI実行する方法

Google or AdMax Promotion(it) 禁断の機能がau公式 …

eye_windows
(バッチで一発)windows7をリモートでシャットダウンする方法

Google or AdMax Promotion(it) 禁断の機能がau公式 …

eye_local_mysql
ローカル環境へのMySQL設置

Google or AdMax Promotion(it) 禁断の機能がau公式 …

eye_windows
VisualStudio 2005 Trial(評価版)は今でもダウンロードできたのか。

Google or AdMax Promotion(it) 禁断の機能がau公式 …

eye_local_wordpress
ローカル環境へのwordpress設置

Google or AdMax Promotion(it) 禁断の機能がau公式 …

eye_local_apache
[コンピュータに MSVCR110.dllがない]とApacheMonitor.exeを起動して言われた場合

Google or AdMax Promotion(it) 禁断の機能がau公式 …

eye_apache_fcgi
(mod_fastcgi on 2.2.x)windowsでCGIをFastCGIで実行するように設定する

Google or AdMax Promotion(it) 禁断の機能がau公式 …