Come combinare proxy gratuiti con user agent

Come combinare proxy gratuiti con user agent

Comprendere i proxy gratuiti e gli user agent: fondamenti

I proxy gratuiti, effimeri come le nuvole su Montmartre, fungono da intermediari tra il tuo client e la vastità di internet. Mascherano il tuo IP, offrendo anonimato o aggirando determinate restrizioni. Gli user agent, invece, sono le firme sottili inscritte in ogni richiesta HTTP, che sussurrano ai server la natura del tuo browser, dispositivo e sistema operativo, proprio come l'accento di una persona tradisce la provenienza geografica.

Combinare questi due strumenti richiede precisione, perché l'armonia del travestimento è delicata. Con la giusta orchestrazione, si può passare inosservati oltre le sentinelle digitali.


Differenze chiave e casi d'uso: proxy gratuiti vs. user agent

Aspetto Proxy gratuiti Agenti utente
Scopo Maschera IP, aggira i blocchi geografici, distribuisci le richieste Imita diversi browser/dispositivi, evita il rilevamento
Implementazione Livello di rete (routing IP) Livello applicativo (intestazioni HTTP)
Rischio di rilevamento Alto (a causa di elenchi pubblici, utilizzo condiviso) Moderato (a causa delle impronte digitali, UA non comuni)
Rotabilità Alto (ruota per richiesta/sessione) Alto (ruota per richiesta/sessione)

Selezione di proxy gratuiti affidabili

La ricerca di proxy gratuiti affidabili è simile alla ricerca della madeleine perfetta: rara, fugace e spesso agrodolce.

  • Fonti: Siti aggregatori affidabili come lista-proxy-gratuita.net, proxyscrape.com, O spia.uno offrire nuovi elenchi di proxy.
  • Criteri di selezione:
    • Livello di anonimato: Preferire proxy “d’élite” o “anonimi”.
    • Protocollo: HTTP/HTTPS per il web scraping; SOCKS5 per applicazioni più ampie.
    • Latenza e tempo di attività: Eseguite test regolarmente: i proxy sono notoriamente instabili.

Elenco proxy di esempio (formato CSV):

Indirizzo IP Porta Protocollo Anonimato Paese
51.158.68.68 8811 HTTP Elite Francia
103.216.82.20 6667 HTTP Anonimo India

Cura degli user agent autentici

Una stringa di user agent, come un abito ben fatto, deve adattarsi all'occasione. Agenti abusati o obsoleti tradiscono l'automazione.

  • Diversità: Raccogli gli user agent recenti da fonti come WhatIsMyBrowser.com, UserAgentString.com.
  • Rotazione: Cambiare gli user agent per richiesta o per sessione.
  • Realismo: Se possibile, abbinare l'agente utente alla regione proxy (ad esempio, un proxy francese con impostazioni locali del browser francesi).

Elenco di esempi di user agent:

Navigatore Esempio di stringa dell'agente utente
Chrome (Win) Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, come Gecko) Chrome/123.0.0.0 Safari/537.36
Firefox (Mac) Mozilla/5.0 (Macintosh; Intel Mac OS X 13_4) Gecko/20100101 Firefox/114.0
Safari (iOS) Mozilla/5.0 (iPhone; CPU iPhone OS 16_4 come Mac OS X) AppleWebKit/605.1.15 (KHTML, come Gecko) Versione/16.0 Mobile/15E148 Safari/604.1

Implementazione della rotazione di proxy e user agent in Python

Intrecciamo ora questi fili insieme nel codice, utilizzando il classico richieste biblioteca e casuale per la spontaneità. Per orchestrazioni più grandiose, richieste-html O Selenio può essere convocato.

Fase 1: preparare gli elenchi

importa proxy casuali = [ '51.158.68.68:8811', '103.216.82.20:6667' ] user_agents = [ 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, come Gecko) Chrome/123.0.0.0 Safari/537.36', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 13_4) Gecko/20100101 Firefox/114.0' ]

Passaggio 2: comporre la richiesta

richieste di importazione def get_random_proxy(): proxy = random.choice(proxy) return { "http": f"http://{proxy}", "https": f"http://{proxy}" } def get_random_user_agent(): return random.choice(user_agents) url = "https://httpbin.org/get" for _ in range(5): proxy = get_random_proxy() user_agent = get_random_user_agent() headers = { "User-Agent": user_agent } try: response = requests.get(url, headers=headers, proxies=proxy, timeout=10) print(response.json()) except Exception as e: print(f"Richiesta fallita: {e}")

Fase 3: Gestire i fallimenti con grazia

I proxy gratuiti, sfuggenti come un tramonto parigino, potrebbero scomparire senza preavviso. Rileva gli errori e riprova con coppie diverse.

da itertools import islice def fetch_with_rotation(url, proxies, user_agents, max_attempts=10): tentativi = 0 per _ in islice(range(max_attempts), max_attempts): proxy = get_random_proxy() user_agent = get_random_user_agent() headers = {"User-Agent": user_agent} try: response = requests.get(url, headers=headers, proxies=proxy, timeout=8) if response.status_code == 200: return response.json() except Exception: continue raise Exception("Tutti i tentativi di proxy sono falliti.") # Esempio di utilizzo: result = fetch_with_rotation("https://httpbin.org/get", proxies, user_agents) print(result)

Le migliori pratiche per un'integrazione perfetta

  • Allineamento proxy-user agent: Per un proxy francese, selezionare un agente utente con impostazioni locali francesi per garantire la verosimiglianza.
  • Limitazione delle richieste: Inserire ritardi casuali (ad esempio, tempo.sonno(casuale.uniforme(2, 7))) per imitare il comportamento umano.
  • Aumento dell'intestazione: Aggiungi intestazioni come Accetta-Lingua E Referente per sfumare ulteriormente il confine tra automazione e navigazione autentica.
  • Gestione della sessione: Utilizzare sessioni persistenti (richieste.Sessione()) per cookie e intestazioni, proxy rotanti e user agent per sessione o per gruppo logico di richieste.

Rischi e limitazioni

Rischio Descrizione Mitigazione
Blacklist dei proxy L'uso frequente di proxy pubblici porta a divieti Ruotare spesso; testare prima dell'uso
Impronta digitale dell'agente utente I server possono analizzare le intestazioni per individuare incongruenze Utilizzare set di intestazioni realistici e coerenti
Riservatezza dei dati I proxy gratuiti possono intercettare o manipolare il traffico Non trasmettere mai informazioni sensibili
Prestazione I proxy gratuiti sono spesso lenti o inaffidabili Monitorare la latenza; accendere i guasti

Esempio: creazione avanzata di intestazioni

Una richiesta elegante come un verso di Baudelaire deve armonizzarsi in ogni dettaglio:

intestazioni = { "User-Agent": get_random_user_agent(), "Accept-Language": "fr-FR,fr;q=0.9,en-US;q=0.8,en;q=0.7", "Accept-Encoding": "gzip, deflate, br", "Referer": "https://www.google.fr/", "Connection": "keep-alive" }

Tabella riassuntiva: passaggi per combinare proxy gratuiti con user agent

Fare un passo Azione
1. Raccogliere Raccogli proxy nuovi e stringhe di user agent aggiornate
2. Convalidare Testare i proxy per tempi di attività e velocità; filtrare gli user agent per autenticità
3. Ruotare Rendi casuali sia i proxy che gli user agent per richiesta/sessione
4. Migliorare Aggiungere intestazioni supplementari per realismo
5. Monitor Rileva errori, riprova con nuove coppie, registra i codici di risposta
6. Rispetto Inserire ritardi e limitare la frequenza per evitare il rilevamento

Solange Lefebvre

Solange Lefebvre

Analista proxy senior

Solange Lefebvre, esperta di percorsi digitali, è alla guida del dipartimento analitico di ProxyMist da oltre un decennio. Con la sua impareggiabile competenza in sicurezza di rete e gestione di server proxy, è stata determinante nel curare e mantenere uno degli elenchi più completi di server proxy SOCKS, HTTP, elite e anonimi a livello mondiale. Cittadina francese con un debole per la precisione, Solange assicura che ProxyMist rimanga all'avanguardia delle soluzioni Internet sicure.

Commenti (0)

Non ci sono ancora commenti qui, potresti essere il primo!

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *