Processador ProxyHandler (configurações de proxy): resolva o problema de bloqueio de IP
Muitos sites irão detectar o número de visitas a um determinado IP em um determinado período de tempo (através de estatísticas de tráfego, logs do sistema, etc.) Se houver muitas visitas, o site irá proibir esse acesso ao IP.
Portanto, neste momento, muitas vezes precisamos mudar para um "pequeno número" para continuar a obter os dados que usamos. Essa "trombeta" é o que eu disse, agente.
Princípio da agência:
Antes de solicitar o site de destino, primeiro solicite o servidor proxy e, em seguida, deixe o servidor proxy solicitar o site de destino. O servidor proxy encaminhará os dados para o nosso código após obter os dados do site de destino.
http://httpbin.org/ Este site pode http solicitar alguns parâmetros.
Os agentes comumente usados são:
IP de proxy gratuito Xici: https://mtop.chinaz.com/site_www.xici.net.co.html
Proxy rápido: https://www.kuaidaili.com/
Nuvem de agente: http://www.dailiyun.com/
Tome a nuvem proxy como exemplo, use proxy:
Escolha um IP de proxy da nuvem de proxy
from urllib import request
# 没有使用代理
url = 'http://httpbin.org/ip'
resp = request.urlopen(url)
print(resp.read())
#使用代理
url = 'http://httpbin.org/ip'
# 1.使用ProxyHandler创建一个代理handler
handler = request.ProxyHandler({'http': '140.143.6.16:1080'})
# 2.创建opener
opener = request.build_opener(handler)
# 3.使用opener发送一个请求
resp = opener.open(url)
print(resp.read())
O acima é o IP de acesso sem proxy, e o abaixo é o IP após usar o proxy.