Shell curl 和 wget 使用代理IP

Linux Shell 提供两个非常实用的命令来爬取网页,它们分别是 curl 和 wget

 

curl 和 wget 使用代理

curl 支持 http、https、socks4、socks5

wget 支持 http、https

代理示例:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
#!/bin/bash
#
# curl 支持 http、https、socks4、socks5
# wget 支持 http、https
#
# 米扑代理示例:
# http://proxy.mimvp.com/demo2.php
#
# 米扑代理购买:
# http://proxy.mimvp.com
#
# mimvp.com
# 2015-11-09
 
 
# http代理格式         http_proxy=http://IP:Port
# https代理格式        https_proxy=http://IP:Port
 
{ 'http' : 'http://120.77.176.179:8888' }
curl -m 30 --retry 3 -x http: //120 .77.176.179:8888 http: //proxy .mimvp.com /exist .php                    # http_proxy
wget -T 30 --tries 3 -e "http_proxy=http://120.77.176.179:8888" http: //proxy .mimvp.com /exist .php        # http_proxy
 
{ 'https' : 'http://46.105.214.133:3128' }
curl -m 30 --retry 3 --proxy-insecure -x http: //46 .105.214.133:3128 -k https: //proxy .mimvp.com /exist .php                    # https_proxy
wget -T 30 --tries 3 --no-check-certificate -e "https_proxy=http://46.105.214.133:3128" https: //proxy .mimvp.com /exist .php    # https_proxy
 
     
# curl  支持socks
{ 'socks4' : '101.255.17.145:1080' }
curl -m 30 --retry 3 --socks4 101.255.17.145:1080 http: //proxy .mimvp.com /exist .php
     
{ 'socks5' : '82.164.233.227:45454' }
curl -m 30 --retry 3 --socks5 82.164.233.227:45454 http: //proxy .mimvp.com /exist .php
 
 
# wget 不支持socks

 

wget 配置文件设置代理

1
2
3
4
5
6
7
8
vim ~/.wgetrc
 
http_proxy=http: //120 .77.176.179:8888:8080
https_proxy=http: //12 .7.17.17:8888:8080
use_proxy = on
wait = 30
 
wget -T 30 --tries 3 http: //proxy .mimvp.com

 

Shell 设置临时局部代理

1
2
3
4
5
6
7
8
9
10
11
12
# proxy no auth
export http_proxy=http: //120 .77.176.179:8888:8080
export https_proxy=http: //12 .7.17.17:8888:8080
 
# proxy auth
export http_proxy=http: //username :password@120.77.176.179:8888:8080
export https_proxy=http: //username :password@12.7.17.17:8888:8080
 
 
# 取消设置
unset http_proxy
unset https_proxy

 

Shell 设置系统全局代理

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
# 修改 /etc/profile,保存并重启服务器
sudo vim /etc/profile      # 所有人有效
sudo vim ~/.bashrc        # 所有人有效
vim ~/.bash_profile        # 个人有效
     
     
# proxy no auth
export http_proxy=http: //120 .77.176.179:8888:8080
export https_proxy=http: //12 .7.17.17:8888:8080
 
# proxy auth
export http_proxy=http: //username :password@120.77.176.179:8888:8080
export https_proxy=http: //username :password@12.7.17.17:8888:8080
 
source /etc/profile
source ~/.bashrc
source ~/.bash_profile
 
 
sudo reboot

 

米扑代理示例

米扑代理示例,包含Python、Java、PHP、C#、Go、Perl、Ruby、Shell、NodeJS、PhantomJS、Groovy、Delphi、易语言等十多种编程语言或脚本,通过大量的可运行实例,详细讲解了使用代理IP的正确方法,方便网页爬取、数据采集、自动化测试等领域。

shell-curl-he-wget-shi-yong-dai-li-ip-01

米扑代理示例,测试使用的代理IP,全部来自于米扑代理,其覆盖120多个国家,中国34个省市,支持http、https、socks4、socks5等

米扑代理示例官网 

http://proxy.mimvp.com/demo2.php

 

 

参考推荐

米扑代理之使用示例 (推荐

mimvp-proxy-demo  (GitHub)

Linux 抓取网页实例(shell+awk)

LinuxIP代理筛选系统(shell+proxy)

 

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Shell脚本中,有很多与网络相关的命令,可以用于网络连接、数据传输、网络诊断等方面。下面列举一些常用的Shell网络命令: 1. ping:ping命令是一种用于测试网络连接的命令,可以测试网络连通性、延迟和丢包率等。ping命令通常用于网络诊断和测试,可以通过ping命令来检查网络故障和网络性能。 2. curlcurl命令是一种用于发送HTTP请求的命令,可以用于获取网页内容、上传文件、下载文件等。curl命令支持多种协议和数据格式,可以通过curl命令来实现各种网络操作。 3. wgetwget命令是一种用于下载文件的命令,可以从HTTP、FTP、HTTPS等协议下载文件。wget命令支持断点续传、递归下载、限速等功能,可以通过wget命令来下载大文件或者多个文件。 4. netstat:netstat命令是一种用于显示网络状态信息的命令,可以显示网络连接、监听端口、路由表等信息。netstat命令通常用于网络诊断和调试,可以通过netstat命令来查看网络连接情况和网络性能。 5. ifconfig:ifconfig命令是一种用于显示和配置网络接口的命令,可以显示和配置网卡、IP地址、子网掩码、网关等信息。ifconfig命令通常用于网络配置和诊断,可以通过ifconfig命令来设置网络接口和检查网络连接。 总之,这些命令在Shell脚本中使用非常广泛,可以用于网络连接、数据传输、网络诊断等方面。使用这些命令可以方便地进行网络操作和网络管理。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值