使用curl下载文件
curl是一个非常好的网络传输库,使用也很简单。常用的使用方式是用它来下载资源文件,以下提供一个下载方法
#include <stdio.h>
#include <iostream.h>
#include <curl/curl.h> using namespace std; int download(string url, string local_file, int down_speed)
{
CURL *image;
CURLcode imgresult;
FILE *fp;
//url_download.c_str(); image = curl_easy_init();
if( image )
{
//Open File
fp = fopen(local_file.c_str(), "w");
if( fp == NULL ) cout << "File cannot be opened"; curl_easy_setopt(image, CURLOPT_WRITEFUNCTION, NULL);
curl_easy_setopt(image, CURLOPT_WRITEDATA, fp);
curl_easy_setopt(image, CURLOPT_URL, url.c_str());
curl_easy_setopt(image, CURLOPT_FOLLOWLOCATION, );
//这里限速 100KB/s
curl_easy_setopt(image, CURLOPT_MAX_RECV_SPEED_LARGE, (curl_off_t) * );
curl_easy_setopt(image, CURLOPT_NOPROGRESS, );
//CURLOPT_RESUME_FROM // Grab image
imgresult = curl_easy_perform(image);
if( imgresult )
{
cout << "Cannot grab the File!\n";
}
}
//Clean up the resources
curl_easy_cleanup(image);
//Close the file
fclose(fp);
return ;
}
使用curl下载文件的更多相关文章
- curl下载文件
* curl下载文件* 根据业务需求* 通过不同站点去访问路径* 下载文件* 但是不同站点需要设置header头* 这里使用curl方式下载* 具体看代码: //下载地址 $url = 'https: ...
- php curl下载文件由于空格导致下载文件失败
<?php //$result=httpcopy('http://www.phpernote.com/image/logo.gif'); echo '<pre>';print_r($ ...
- curl下载文件时自动创建目录
有时候需要自动创建多级目录 按照如下格式即可 curl -o d:/lei/demo/test.jpg --create-dirs http://img.7160.com/uploads/allimg ...
- PHP使用CURL上传|下载文件
CURL下载文件 /** * @param string $img_url 下载文件地址 * @param string $save_path 下载文件保存目录 * @param string $fi ...
- Linux curl 命令下载文件
引用自http://blog.csdn.net/wh211212/article/details/54285921 命令:curl 在Linux中curl是一个利用URL规则在命令行下工作的文件传输工 ...
- 使用libcurl下载文件小例
libcurl是一个很强大的开源网络处理库,支持包括HTTP.HTTPS.FTP……一系列网络协议.用它来进行HTTP的get\post 或者下载文件更是小菜一碟,chrome内核都用到了它,本文主要 ...
- PHP利用Curl实现多线程抓取网页和下载文件
PHP 利用 Curl 可以完成各种传送文件操作,比如模拟浏览器发送GET,POST请求等等,然而因为php语言本身不支持多线程,所以开发爬虫程序效率并不高,一般采集 数据可以利用 PHPquery ...
- PHP CURL实现远程下载文件到本地
<?php //$result=httpcopy('http://www.phpernote.com/image/logo.gif'); echo '<pre>';print_r($ ...
- 使用CURL下载远程文件保存到服务器
比如微信公众平台开发,下载用户的头像到服务器上: /** * 使用CURL获取远程文件保存到服务器 *@param $image=$oJSON->headimgurl; 获取到的微信返回的头像U ...
随机推荐
- phpcms v9后台多表查询分页代码
phpcms v9里面自带的listinfo分页函数蛮好用的,可惜啊.不支持多表查询并分页. 看了一下前台模板层支持get标签,支持多表查询,支持分页.刚好可以把这个功能搬到后台来使用. 我们现在对g ...
- Centos 6.2上安装使用 Informix11.70 数据库
环境要求:操作系统: Centos 6.2 32位数据库软件: iif.11.70.UC7IE.Linux-RHEL5.tar(在IBM网站上注册个帐号就可以下载,包括windows,Linux,Un ...
- Java学习-集合(转)
在编写java程序中,我们最常用的除了八种基本数据类型,String对象外还有一个集合类,在我们的的程序中到处充斥着集合类的身影!java中集合大家族的成员实在是太丰富了,有常用的ArrayList. ...
- Docker容器中运行ASP.NET Core
在Linux和Windows的Docker容器中运行ASP.NET Core 译者序:其实过去这周我都在研究这方面的内容,结果周末有事没有来得及总结为文章,Scott Hanselman就捷足先登了. ...
- MSTest不支持参数化测试的解决方案
之前的项目中做单元测试一直用的是NUnit,这次做新项目,负责人要求统一用MsTest,理由是MsTest是Visual Studio内置的.用就用吧,我没什么意见.不过用了两天,我就发现一个大问题: ...
- js二级下拉菜单
看似简单的一个菜单,确需要不少的知识点 1. getByClass getElementsByClassName 已经有大部分现代浏览器支持了,只有ie6,ie7,ie8是不支持的.所以对ie6,7, ...
- 如何创建phpinfo查看php信息?
创建一个简单的文本文档并命名为phpinfo.php 代码如下: <?php phpinfo(); ?> 将上面的代码写入并保存该文档,通过浏览器访问这个文件即可显示PHP信息
- 如何查看Linux的磁盘空间还有多少
无论是Linux还是unix,都提供了很多工具来查看磁盘空间的大小. 1. df命令,df命令,可以查看当前文件系统占用的空间的大小,以及剩余的大小,如下例子: Filesystem 1K-b ...
- WPF下的一个Socket
public class Connection { Socket _connection; public Connection(Socket socket) { _connection = socke ...
- webstrom使用记录
很不方便的一点: 输入 $("#div p" 之后输入",就会变成$("#div p""" 这样,很不爽.