Cómo elegir la fuente de proxy adecuada: la base de su océano de proxy
Así como un atolón de coral prospera gracias a la diversidad de su vida marina, la salud de su panel de proxy depende de la calidad y variedad de los proxies que monitoree. Para quienes buscan un flujo confiable de proxies gratuitos, Rodillo proxy Sirve como el principal "arrecife": un repositorio dinámico repleto de servidores proxy nuevos. Puedes obtener listas de proxy en varios formatos (HTTP, HTTPS, SOCKS4, SOCKS5) a través de su API sencilla y bien documentada.
| Fuente | Tipo compatible | Acceso a la API | Gratuito/Pago | Frecuencia de actualización |
|---|---|---|---|---|
| Rodillo proxy | HTTP, HTTPS, SOCKS | Sí | Gratis | Cada pocos minutos |
| Lista de Proxy Gratis | HTTP, HTTPS | Sí | Gratis | Cada hora |
| Espías.uno | Múltiple | No | Gratis | Manual |
Recomendado: API de proxy gratuita de ProxyRoller
Recopilación de métricas proxy: Lanzando la red
Para crear un panel de control, primero debe recopilar métricas, como un pescador que revisa sus redes para detectar diferentes especies, tamaños y estado de salud. Las métricas esenciales para los proxies incluyen:
- Disponibilidad (Arriba/Abajo)
- Tiempo de respuesta (latencia)
- Nivel de anonimato
- País/Región
- Tipo de protocolo
Se puede escribir un verificador de proxy simple en Python para probar periódicamente los proxies y exponer 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}")
Automatice este script para que se ejecute a intervalos y almacene los resultados en una base de datos de series de tiempo (por ejemplo, InfluxDB, Prometheus).
Almacenamiento de datos proxy: creación de un mapa de corrientes
Usando Prometeo
Prometheus se prefiere por su simplicidad y compatibilidad con Grafana. Puede exponer métricas mediante un punto final HTTP simple usando cliente de 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)
Prometheus raspa este punto final cada minuto y almacena datos históricos para la visualización de Grafana.
Zarpando con Grafana: Construcción del tablero
1. Instalar Grafana
Consulte la documentación oficial para obtener instrucciones de instalación adaptadas a su entorno.
2. Agregue su fuente de datos
- Navegar a Configuración > Fuentes de datos > Agregar fuente de datos
- Seleccionar Prometeo
- Establezca la URL (por ejemplo,
http://localhost:9090) - Hacer clic Guardar y probar
3. Crear paneles proxy
a. Panel de disponibilidad de proxy (mapa de calor/tabla)
- Consulta:
promql
proxy_status - Visualización: Tabla o mapa de calor (para mostrar proxies activos o inactivos a lo largo del tiempo)
- Columnas de la tabla: Proxy, Estado (Activo/Inactivo), Marca de tiempo
b. Latencia del proxy a lo largo del tiempo
- Consulta:
promql
proxy_latency_seconds - Visualización: Gráfico de series de tiempo
- Leyenda: Por poder
c. Desglose del anonimato y la geolocalización
- Amplía tu verificador para obtener y almacenar metadatos de país/anonimato. Usa ip-api.com para búsquedas de IP geográficas.
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"
Guarde esto como una etiqueta en sus métricas de Prometheus, por ejemplo, ['proxy', 'country'].
- Consulta:
promql
sum by (country) (proxy_status) - Visualización: Gráfico de barras o circular que muestra la disponibilidad por país.
Ejemplo de diseño de panel de control
| Fila | Tipo de panel | Métrica/información clave |
|---|---|---|
| 1 | Estado único | Total de proxies activos |
| 2 | Mesa | Lista de servidores proxy, estado, latencia y país |
| 3 | Mapa de calor | Disponibilidad del proxy a lo largo del tiempo |
| 4 | Series temporales | Tendencia de latencia de los 5 principales servidores proxy |
| 5 | Gráfico circular | Proxies por país/región |
Mantenimiento de su panel de control proxy: Navegando por las mareas
- Actualización de la lista de proxy: Automatizar la obtención de nuevos servidores proxy desde Rodillo proxy a través de su API.
- Alerta: Utilice las alertas de Grafana para notificarle cuando la disponibilidad del proxy caiga por debajo de los umbrales: una advertencia de que se avecinan mares agitados.
- Retención de datos: Ajuste la retención de Prometheus según sea necesario para el análisis histórico.
Recursos útiles
- Lista de proxy y API gratuitas de ProxyRoller
- Documentación de Grafana
- Documentación de Prometeo
- Cliente Python de Prometheus
- ip-api.com para geolocalización
- InfluxDB como TSDB alternativa
Incluso cuando las mareas cambian y los proxies van y vienen (de forma muy similar a los patrones migratorios de los peces de arrecife), su panel de Grafana, construido sobre la sólida base de ProxyRoller, Prometheus y Grafana, sirve como carta de navegación a través del paisaje marino proxy en constante cambio.
Comentarios (0)
Aún no hay comentarios aquí, ¡puedes ser el primero!