📜  使用带有 curl 的代理 (1)

📅  最后修改于: 2023-12-03 14:49:54.591000             🧑  作者: Mango

使用带有 cURL 的代理

cURL 的代理功能允许我们在发送 HTTP 请求时使用另一个服务器作为中间代理,来获取网络资源。使用代理,有助于避免 IP 被封禁(反爬虫)和访问被限制的资源。我们可以通过在 cURL 命令中添加代理参数来访问特定的代理服务器。

以下是如何使用 cURL 代理的不同方式:

1. 使用 HTTP 代理

我们可以通过 cURL 命令的 -x 或者 --proxy 选项来使用 HTTP 代理,例如:

curl -x http://proxy.example.com:8080 https://example.com

可以看到上面的示例中,-x 后跟着需要使用的代理服务器的地址和端口号,以 : 分隔。然后指定需要访问的 URL。

2. 使用 HTTPS 代理

同样地,我们可以使用 --proxy 选项来指定 HTTPS 代理。注意,如果使用的是 HTTPS 代理,我们需要在代理的地址前添加 https:// 前缀。

curl --proxy https://proxy.example.com:443 https://example.com

注意:此时端口号默认为 443。

3. 使用 SOCKS4、SOCKS4a 或 SOCKS5 代理

如果要使用 SOCKS4、SOCKS4a 或 SOCKS5 代理,我们需要在 cURL 命令中增加 -x--proxy 选项。然后在代理地址前添加相应的协议名称,例如:

# SOCKS4
curl -x socks4://proxy.example.com:1080 https://example.com

# SOCKS4a,支持域名解析
curl -x socks4a://proxy.example.com:1080 https://example.com

# SOCKS5
curl -x socks5://proxy.example.com:1080 https://example.com
4. 身份验证

有些代理服务器需要提供身份验证信息,例如登录名和密码。我们可以使用 --proxy-user 选项来提供身份验证信息,例如:

curl -x http://proxy.example.com:8080 --proxy-user user:password https://example.com

上面的示例中,--proxy-user 后面跟着登录用户名和密码(中间以 : 分割)。

5. 使用配置文件

最后,我们还可以在 cURL 命令中使用配置文件来指定代理。具体可以参考 cURL 的配置文件


参考链接: