Como escolher a fonte de proxy certa: a base do seu universo de proxies.
Assim como um atol de coral prospera com a diversidade de sua vida marinha, a saúde do seu painel de proxies depende da qualidade e variedade dos proxies que você monitora. Para aqueles que buscam um fluxo confiável de proxies gratuitos, Rolo de Proxy Serve como o principal "recife" — um repositório vivo repleto de servidores proxy atualizados. Você pode obter listas de proxies em vários formatos (HTTP, HTTPS, SOCKS4, SOCKS5) por meio de sua API simples e bem documentada.
| Fonte | Tipo suportado | Acesso à API | Gratuito/Pago | Frequência de atualização |
|---|---|---|---|---|
| Rolo de Proxy | HTTP, HTTPS, SOCKS | Sim | Livre | A cada poucos minutos |
| Lista de Proxy Grátis | HTTP, HTTPS | Sim | Livre | De hora em hora |
| Espiões.um | Múltiplo | Não | Livre | Manual |
Recomendado: API de proxy gratuita ProxyRoller
Coletando métricas de proxy: lançando a rede
Para construir um painel de controle, primeiro você precisa coletar métricas — como um pescador que verifica suas redes em busca de diferentes espécies, tamanhos e condições de saúde. Métricas essenciais para indicadores indiretos incluem:
- Disponibilidade (para cima/para baixo)
- Tempo de resposta (latência)
- Nível de anonimato
- País/Região
- Tipo de protocolo
Um verificador de proxy simples pode ser escrito em Python para testar proxies periodicamente e expor métricas:
import requests
import time
def check_proxy(proxy, test_url="https://httpbin.org/ip"):
try:
resp = requests.get(
test_url,
proxies={"http": proxy, "https": proxy},
timeout=5
)
return resp.elapsed.total_seconds(), resp.status_code == 200
except:
return None, False
proxy_list = ["http://1.2.3.4:8080", "http://5.6.7.8:3128"] # Replace with your fetched list
for proxy in proxy_list:
latency, alive = check_proxy(proxy)
print(f"{proxy} | Latency: {latency} | Alive: {alive}")
Automatize este script para ser executado em intervalos regulares, armazenando os resultados em um banco de dados de séries temporais (por exemplo, InfluxDB, Prometheus).
Armazenando dados proxy: Construindo um mapa de correntes
Usando o Prometheus
O Prometheus é preferido por sua simplicidade e compatibilidade com o Grafana. Você pode expor métricas por meio de um endpoint HTTP simples usando cliente prometheus:
from prometheus_client import start_http_server, Gauge
import time
PROXY_STATUS = Gauge('proxy_status', 'Proxy availability', ['proxy'])
PROXY_LATENCY = Gauge('proxy_latency_seconds', 'Proxy latency in seconds', ['proxy'])
def update_metrics():
for proxy in proxy_list:
latency, alive = check_proxy(proxy)
PROXY_STATUS.labels(proxy=proxy).set(1 if alive else 0)
if latency:
PROXY_LATENCY.labels(proxy=proxy).set(latency)
if __name__ == "__main__":
start_http_server(8000)
while True:
update_metrics()
time.sleep(60)
O Prometheus coleta dados desse endpoint a cada minuto, armazenando o histórico de dados para visualização no Grafana.
Navegando com o Grafana: Construção do Painel de Controle
1. Instale o Grafana
Consulte o documentação oficial Para obter instruções de instalação adaptadas ao seu ambiente.
2. Adicione sua fonte de dados
- Navegar para Configuração > Fontes de dados > Adicionar fonte de dados
- Selecione Prometeu
- Defina o URL (por exemplo,
http://localhost:9090) - Clique Salvar e testar
3. Criar painéis de proxy
a. Painel de Disponibilidade de Proxies (Mapa de Calor/Tabela)
- Consulta:
promql
proxy_status - Visualização: Tabela ou mapa de calor (para mostrar proxies em alta/baixa ao longo do tempo)
- Colunas da tabela: Proxy, Status (Ativo/Inativo), Carimbo de data/hora
b. Latência do proxy ao longo do tempo
- Consulta:
promql
proxy_latency_seconds - Visualização: Gráfico de série temporal
- Lenda: Por procuração
c. Anonimato e Análise de Geolocalização
- Amplie seu verificador para buscar e armazenar metadados de país/anonimato. Use ip-api.com para pesquisas de geolocalização por IP.
import requests
def get_country(ip):
try:
resp = requests.get(f"http://ip-api.com/json/{ip}")
return resp.json().get("countryCode")
except:
return "Unknown"
Armazene isso como um rótulo em suas métricas do Prometheus, por exemplo, ['proxy', 'country'].
- Consulta:
promql
sum by (country) (proxy_status) - Visualização: Gráfico de barras ou de pizza mostrando a disponibilidade por país.
Exemplo de layout de painel de controle
| Linha | Tipo de painel | Métrica/Informação chave |
|---|---|---|
| 1 | Estatística única | Total de proxies ativos |
| 2 | Mesa | Lista de proxies, status, latência, país |
| 3 | Mapa de calor | Disponibilidade de proxy ao longo do tempo |
| 4 | Séries temporais | Tendência de latência para os 5 principais proxies |
| 5 | Gráfico de pizza | Representantes por país/região |
Manutenção do seu painel de controle de proxy: navegando pelas águas turbulentas.
- Atualização da lista de proxies: Automatize a busca de novos proxies de Rolo de Proxy por meio de sua API.
- Alerta: Use os alertas do Grafana para ser notificado quando a disponibilidade de proxies cair abaixo dos limites definidos — um sinal de alerta de tempos difíceis pela frente.
- Retenção de dados: Ajuste a retenção do Prometheus conforme necessário para a análise histórica.
Recursos úteis
- Lista de Proxy e API Gratuitos do ProxyRoller
- Documentação do Grafana
- Documentação do Prometheus
- Cliente Python Prometheus
- ip-api.com para geolocalização
- InfluxDB como TSDB alternativo
Mesmo com as mudanças de maré e a constante movimentação de proxies — assim como os padrões migratórios dos peixes de recife —, seu painel do Grafana, construído sobre a base sólida do ProxyRoller, Prometheus e Grafana, serve como seu mapa de navegação através do cenário sempre mutável dos proxies.
Comentários (0)
Ainda não há comentários aqui, você pode ser o primeiro!