Linux下cURL使用教程之一:cURL简介

随着网络应用的盛行,HTTP脚本编程成为一项流行的技术:
你可能需要到某个web页面自动的下载一些信息(采集)或请求某个接口;
可能还需要模仿成一个正常浏览器的样子,或者使用代理;
甚至需要上传或POST数据。

而cURL就是HTTP脚本编程的利器。

什么是cURL

cURL的官方网站上这样解释:“The name is a play on ‘Client for URLs’”。意思为“访问URL的客户端”。
“cURL is a command line tool for doing all sorts of URL manipulations and transfers”,cURL是用于进行各种对URL的操作和访问传输的命令行工具。
而在Linux man手册里这样解释:“cURL - transfer a URL”,意思是对URL的访问传输。
今天我们要讲的curl是Linux下一个强大的对URL进行操作的命令行工具。
而cURL的写法,URL突出大写,也正是强调对URL的操作。

cURL主要特点

  1. 支持多协议
    URL的定义为“统一资源定位符”(详见RFC 3986),是不局限于HTTP协议的。
    因此cURL支持多种协议,如DICT, FILE, FTP, FTPS, GOPHER, HTTP, HTTPS,IMAP, IMAPS,LDAP, LDAPS, POP3, POP3S, RTMP, RTSP, SCP, SFTP, SMTP, SMTPS, TELNET and TFTP等。
  2. 命令行操作,简单强大
    CURL是无GUI界面的,全部基于命令行操作,这无疑使它可以很方便的集成在像Linux脚本等程序中,
    而通过我们进一步编程处理,就可以完成非常强大的功能。
  3. 开源跨平台
    cURL工具是由libcurl开源项目组提供,此项目组提供开源的libcurl库,此库是由C语言实现客户端URL操作库,提供对URL的访问等操作功能,cURL工具就是采用libcurl实现。
    而因为libcurl库是适用于多个平台的,因此cURL也适用于多个平台,如Win、Linux、OS/400、TPF等平台。
    这成为cURL比GNU官方的wget更强大的原因之一。