curl简单入门

petewell      2022-02-14     217

关键词:

curl是利用URL语法在命令行方式下工作的开源文件传输工具。它被广泛应用在Unix、多种Linux发行版中,并且有DOS和Win32、Win64下的移植版本。

curl官网下载你需要的curl版本,这儿我使用的win64位,解压后,将curl.exe文件放置到C:WindowsSystem32路径下,可是使用命令行敲入curl出现以下图片,表示安装成功。
技术图片

curl常用参数

-A:随意指定自己这次访问所宣称的自己的浏览器信息

-b/–cookie cookie字符串或文件读取位置:使用option来把上次的cookie信息追加到http request里面去。

-c/–cookie-jar 操作结束后把cookie写入到这个文件中

-C/–continue-at 断点续转

-d/–data : HTTP POST方式传送数据

-D/–dump-header 把header信息写入到该文件中

-F/–form 模拟http表单提交数据

-v/–verbose 小写的v参数,用于打印更多信息,包括发送的请求信息,这在调试脚本是特别有用。

-m/–max-time 指定处理的最大时长

-H/–header

-s/–slient 减少输出的信息,比如进度

–connect-timeout 指定尝试连接的最大时长

-x/–proxy 指定代理服务器地址和端口,端口默认为1080

-T/–upload-file 指定上传文件路径

-o/–output 指定输出文件名称

–retry 指定重试次数

-e/–referer 指定引用地址

-I/–head 仅返回头部信息,使用HEAD请求

-u/–user 设置服务器的用户和密码

-O:按照服务器上的文件名,自动存在本地

-r/–range 检索来自HTTP/1.1或FTP服务器字节范围

-T/–upload-file 上传文件

curl实现GET/POST请求

  1. 直接访问站点

    curl http:
    # https地址可以直接访问    
    curl https:
    
  2. 保存访问页面/资源

    # 将网站的首页保存到当前目录index.html文件中
    curl -o index.html http:
    # 将网站上面的资源以原来的名称 保存到当前目录
    curl -O http://www.XXXX.com/banner.jpg
    
  1. GET方式请求

    curl http://www.example.com?username=kuku&passwd=123456
    # A/001.JPG -> 下载后: 001-A.JPG 原来: B/001.JPG -> 下载后: 001-B.JPG
    curl -o #2_#1.jpg http://www.XXXX.com/~{A,B}/[001-201].JPG
    
  2. Post方式请求

    curl -d "username=kuku&passwd=123456" http://www.example.com
    
  3. 模拟表单信息,模拟登录

    # 保存cookie信息
    curl -c ./cookie_c.txt -F log=aaaa -F pwd=*** http://www.XXXX.com/login.htm
    # 保存header信息
    curl -D ./cookie_D.txt -F log=aaaa -F pwd=*** http://www.XXXX.com/login.htm
    # 使用cookie文件
    curl -b ./cookie_c.txt http://www.XXXX.com/admin.htm
    
  4. 断点续传 -C(大写)

    curl -C -O http://www.XXXX.com/banner.jpg
    
  5. 伪造来源地址,防盗链

    curl -e http://localhost http://www.XXXX.com/login.htm
    
  6. 代理IP

    curl -x xx.xx.xx.xx:xxxxx -o index.html http://www.XXXX.com
    
  7. 分段下载

    curl -r 0-100 -o img.part1 http://www.XXXX.com/banner.jpg
    curl -r 100-200 -o img.part2 http://www.XXXX.com/banner.jpg
    curl -r 200- -o img.part3 http://www.XXXX.com/banner.jpg
    cat img.part* > img.jpg
    
  8. 显示/隐藏下载进度条

    # 隐藏进度条
    curl -s -o aaa.jpg http://www.baidu.com/img/bdlogo.gif
    # 显示进度条
    curl -O aaa.jpg http://www.baidu.com/img/bdlogo.gif
    
  9. 模拟浏览器头

    curl -A "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.0)" -x 123.45.67.89:1080 -o index.html -D cookie0001.txt http://www.baidu.com
    
  10. 文件上传

    一点需要注意的是,POST模式下的文件上的文件上传,比如
        <form method="POST" enctype="multipar/form-data" action="http://www.xxx.com/uploadImg">
        <input type=file name=upload>
        <input type=submit name=nick value="go">
        </form>
    这样一个HTTP表单,我们要用curl进行模拟,就该是这样的语法:
    curl -F upload=@localfilename -F nick=go http://www.xxx.com/uploadImg
    
  11. 引用,某些资源需要经过一个网络地址跳转过去

    curl -e http://www.xx.com/redict
    
  12. 上传一个资源到http服务器,最好使用PUT方法

    curl -T uploadfile http://www.xxx.com
    curl --upload-file uploadfile http://www.xxx.com
    

参考

CURL实现HTTP的GET/POST方法
CURL详解
curl官网

原文:大专栏  curl简单入门


curl简单实用

 学习地址:https://yq.aliyun.com/articles/33262curl的简单使用步骤要使用cURL来发送url请求,具体步骤大体分为以下四步:1.初始化2.设置请求选项3.执行一个cURL会话并且获取相关回复4.释放cURL句柄,关闭一个cURL会话输出thisisageturlcURL... 查看详情

2019-09-16curl简单操作

1.get请求(使用file_get_contents()函数也可以实现get请求)//http_build_query()构造一个url字符串functionhttp_get($url){//1.初始化curl$ch=curl_init();//2.设置参数curl_setopt($ch,CURLOPT_URL,$url);//指定网址curl_setopt($ch,CURLOPT_RETURN 查看详情

curl_init()简单使用

<?phpfunction_request($curl,$https=true,$method=‘get‘,$data=null){$ch=curl_init();//初始化curl_setopt($ch,CURLOPT_URL,$curl);curl_setopt($ch,CURLOPT_HEADER,false);//设置不需要头信息curl_setopt($ch,CURLOPT_RET 查看详情

http入门(代码片段)

HTTPwww互联网---##URI:统一资源标识符URL:统一资源定位符URN:统一资源名称##HTTP:超文本传输协议###HTTP请求:curl-s-v-H"muxue:xxx"--"https://www.baidu.com"用curl创造一个请求,并得到响应用curl创造一个请求,并得到响应请求的内容为>GET/HTT... 查看详情

php简单的curl示例(代码片段)

查看详情

php简单的phprestcient使用curl(代码片段)

查看详情

docker入门与应用系列镜像管理

1.1什么是镜像  简单说,Docker镜像是一个不包含Linux内核而又精简的Linux操作系统。1.2镜像从哪里来  DockerHub是由Docker公司负责维护的公共注册中心,包含大量的容器镜像,Docker工具默认从这个公共镜像库下载镜像。https://hub... 查看详情

http入门(一):在bash中curl查看请求与响应

参考技术A使用curl-s-v-H"Mtt:xxx"--https://www.baidu.com来在Bash里创造一个请求,并得到响应。请求与响应截图:请求内容:curl-XPOST-s-v-H"Frank:xxx"--"https://www.baidu.com"测试请求的内容为curl-XPOST-d"1234567890"-s-v-H"Frank:xxx"--https://www.baidu.com测试... 查看详情

arthas入门最佳实践(代码片段)

一、入门步骤1、安装https://arthas.gitee.io/install-detail.html上述命令会下载启动脚本文件as.sh到当前目录curl-Lhttps://alibaba.github.io/arthas/install.sh|shoras.sh启动curl-skhttps://arthas.gitee.io/arthas-boot.jar-o~/.arthas-boot. 查看详情

vs2017编译并配置libcurl入门教程(代码片段)

libcurl可以用来发送http请求,是c/c++发送http请求常用的库下载libcurl源码包:libcurl下载地址:https://curl.haxx.se/download.html解压到C:\source\repos\libcurl\curl-7.60.0打开curl文件夹,以管理员权限运行buildconf.bat。编译libcurl源码选择【开始】-&... 查看详情

简单搜索入门

1、querystringsearch2、queryDSL3、queryfilter4、full-textsearch5、phrasesearch6、highlightsearch*****************************************************************************************1、querystringsearch搜索 查看详情

elasticsearch入门(代码片段)

ElasticSearch全文搜索属于最常见的需求,开源的Elasticsearch(以下简称Elastic)是目前全文搜索引擎的首选。它可以快速地储存、搜索和分析海量数据。维基百科、StackOverflow、Github都采用它。概念Elastic会索引所有字段,查询就是查... 查看详情

一个使用curl发布(get)到twitter的简单函数

|<?php //AsimplefunctionusingCurltopost(GET)toTwitter//Kosso:March142007 //Feelfreetodowhatyoulikewiththis.//It'sprettyeasy.ButIthoughtI'djustputitoutthere.//Curlisyourfriend.&nbs 查看详情

windowsservice开发简单入门

一、简介1)二、demo建立  1)  2)  3)  4)  5)  6)  7)  8)  9)  10)三、总结及注意事项 查看详情

struts简单入门

本章主要讲解Struts2简单入门,第一个程序的建立全部代码下载:Github链接:链接https://github.com/wpeace1212/javaBlog/tree/master/struts2Demo写文章不易,欢迎大家采我的文章,以及给出有用的评论,当然大家也可以关注一下我的github;多谢... 查看详情

入门activiti-------1简单运行

1.下载原料2.放置位置3.运行4.成功页面和测试数据  查看详情

hadoop入门简单教程

目录:一.hadoop入门须知 一.hadoop入门须知名词解释:   2.必需软件JDK1.6以上SSH无密码访问(hadoop的使用,必须配置成ssh无密码访问):解决方法:root用户下://移除密钥文件$cd~/.ssh$rm-rf*.pub$rm-rfauthorized_keys//生成密钥... 查看详情

css简单入门

                                 &n 查看详情