スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

C++でnanowwwでバイナリファイルをDLする(g++)

PHPからC++で書いたソフトを呼び出して使う予定なんだけど、大量にローカルで処理するとなるとやはりC++に任せた方が早いものだと思う、常識的に考えて。
ところがC++でHTTP通信なDLするコード書くのは面倒・・・。
ところがどっこいnanowwwを使うと凄く短く分かりやすいコードになる。

ファイルDLするところだけのソースを貼るよ。

環境
CentOS 6.4
gcc version 4.4.7 20120313 (Red Hat 4.4.7-3) (GCC)
※環境については1個前の僕の記事に記載あり。

nanowwwの準備
nanowwwはこちらを参考にしました。感謝!
http://d.hatena.ne.jp/snaka72/20110803/1312390989
※Pullしてsubmoduleもってきてってのを3行でできることをしった。素敵


コーディング
書いたコードはこちら。ほぼ上記URL先サイト様のサンプルにファイル吐き出しとコメント追加しただけ。


#include < stdio.h>
#include < fstream>
#include "../nanowww/nanowww.h"

using namespace std;

int main(void){
nanowww::Client client;
nanowww::Response res;

if (client.send_get(&res, "http://svc.2chan.net/dat/l/src/1379832730989.jpg"))
if (res.is_success()) {

//success
//std::cout << res.content() << std::endl;

   //データ保存
ofstream fs1("test.jpg");
// for (int i = 0; i < 10; i++) {
   fs1 << res.content() << endl;
// }

}else{
//error
std::cout << client.errstr() << std::endl;

}
return 0;
}




シメ
もともとはテキスト的なものをDLするコードだったので「std::cout << res.content() << std::endl;」があったんだけどコメントアウト。
画像DLするようにしたあともそのままにしちゃってて実行したらPuttyがファーwwwwwww

追記、不要なfor文あったのでコメントアウト。きがつかんかった。
スポンサーサイト

コメントの投稿

非公開コメント

検索フォーム
RSSリンクの表示
リンク
ブロとも申請フォーム

この人とブロともになる

上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。