Come utilizzare i proxy gratuiti con Puppeteer

Come utilizzare i proxy gratuiti con Puppeteer

Comprendere i proxy nel contesto del burattinaio

Puppeteer, il kit di strumenti del marionettista per Chrome, piroetta sul palcoscenico digitale con grazia, eppure a volte la sua danza deve indossare un mantello, una maschera: il proxy. I proxy gratuiti, quei fantasmi effimeri sparsi per il web, possono proteggere il tuo IP o sbloccare contenuti con restrizioni regionali. Ma, come tutti i doni della cornucopia di Internet, sono a doppio taglio: fragili, spesso inaffidabili e a volte un canto di sirena per gli incauti.

Tabella 1: Tipi di proxy gratuiti e relativi pro e contro

Tipo di proxy Descrizione Professionisti Contro
HTTP Instrada solo il traffico HTTP Semplice, ampiamente supportato Nessun HTTPS, meno sicuro
HTTPS/SSL Protegge il traffico HTTP con SSL/TLS Sicuro, crittografato A volte più lento, più raro
SOCKS4/5 Instrada qualsiasi traffico (TCP), non solo HTTP Versatile, anonimo Il burattinaio ha bisogno di una configurazione extra
Trasparente Rivela il tuo IP al server di destinazione Facile da trovare Nessun anonimato
Anonimo Nasconde il tuo IP, ma si identifica come proxy Privacy di base Potrebbe ancora essere bloccato
Elite/Alto Anonimo Nasconde il tuo IP, non si identifica come proxy Migliore privacy Più difficile da trovare

Fase 1: Raccolta di proxy gratuiti

Cominciamo dalla fonte: curando un elenco di proxy. Molti aggregatori online, come Elenco proxy gratuito, riversa le tabelle degli IP e delle porte, come segue:

Indirizzo IP Porta Protocollo Anonimato Paese 195.154.161.130 8080 HTTP Elite FR 103.216.82.198 6667 HTTPS Anonimo IN

Per i più intrepidi, si consiglia di automatizzare il recupero e la convalida del proxy, per evitare che il proprio script si imbatta in un indirizzo non attivo e crolli in preda alla disperazione digitale.

Passaggio 2: configurazione di Puppeteer per l'utilizzo di un proxy

L'incantesimo è semplice, ma la magia è precisa. Il burattinaio accetta un --server proxy argomento all'avvio del browser:

const puppeteer = require('puppeteer'); (async () => { const browser = await puppeteer.launch({ args: ['--proxy-server=195.154.161.130:8080'] // Sostituisci con il tuo proxy }); const page = await browser.newPage(); await page.goto('https://httpbin.org/ip'); console.log(await page.content()); await browser.close(); })();

Detto questo, la marionetta danza dietro una nuova maschera.

Fase 3: Autenticazione: il rituale delle credenziali proxy

Alcuni proxy richiedono un tributo: un nome utente e una password. Il burattinaio, sempre disponibile, può fornirli tramite pagina.autenticare:

const browser = await puppeteer.launch({ args: ['--proxy-server=proxy.example.com:3128'] }); const page = await browser.newPage(); await page.authenticate({ username: 'myuser', password: 'mypassword' }); await page.goto('https://httpbin.org/ip');

Ricordatelo prima della vostra prima navigazione, per evitare che i guardiani vi sbarrano l'ingresso.

Fase 4: Rotazione tra le ombre: utilizzo di più proxy

Affidarsi a un singolo proxy è arroganza; i saggi orchestrano una rotazione. Ecco una coreografia minimale, che prevede il passaggio da una serie di proxy all'altra:

const proxies = [ '195.154.161.130:8080', '103.216.82.198:6667', // ... altri proxy ]; for (const proxy di proxy) { const browser = await puppeteer.launch({ args: [`--proxy-server=${proxy}`] }); const page = await browser.newPage(); await page.goto('https://httpbin.org/ip'); console.log(`Proxy ${proxy}:`, await page.content()); await browser.close(); }

Per i balletti più sofisticati, si possono prendere in considerazione la randomizzazione, i controlli sanitari e il recupero degli errori.

Fase 5: Test e convalida dell'efficacia del proxy

La promessa di un proxy è fugace come un sogno di mezza estate. Testa sempre prima di fidarti:

  • Utilizzare endpoint come https://httpbin.org/ip O https://api.ipify.org per confermare il tuo mascheramento IP.
  • Tieni sotto controllo i tempi di risposta: i proxy gratuiti sono spesso lenti o capricciosi.
  • Implementa timeout e nuovi tentativi nei tuoi script.

Tabella 2: Checklist di convalida del proxy

Test Esempio di implementazione del burattinaio
Cambio IP Visita https://httpbin.org/ip e analizzare la risposta
Supporto HTTP(S) Prova sia gli URL HTTP che HTTPS
Latenza Misura Data.ora() prima e dopo la navigazione
Rilevamento dei blocchi Controlla HTTP 403/429 o CAPTCHA nelle risposte
Autenticazione proxy Test con/senza credenziali se richiesto

Fase 6: Gestione degli errori del proxy e ripristino degli errori

Il percorso è pieno di pericoli; la tua sceneggiatura deve essere resiliente:

prova { await page.goto('https://example.com', {timeout: 30000}); } catch (error) { console.log('Proxy fallito:', proxy, error.message); // Facoltativamente, riprova con un nuovo proxy }

Per evitare loop infiniti, si consiglia di automatizzare la rimozione del proxy dal pool in caso di ripetuti errori.

Riflessioni sulla sicurezza e sull'etica

I proxy gratuiti sono fiori selvatici: bellissimi, ma a volte intrisi di tossine. Non inviare mai dati sensibili tramite proxy non affidabili; gli sniffer potrebbero nascondersi dall'altra parte. Utilizzali solo per la navigazione pubblica o non riservata. E sempre, nello spirito dei filosofi francesi, rispetta il file robots.txt e i beni comuni digitali.

Tabella 3: Proxy gratuiti vs. Proxy a pagamento

Aspetto Proxy gratuiti Proxy a pagamento
Affidabilità Basso, spesso offline Tempo di attività elevato e garantito
Velocità Variabile, spesso lento Veloce, coerente
Anonimato Discutibile Forte, configurabile
Sicurezza Non affidabile, rischioso Affidabile, supporto disponibile
Costo Gratuito Abbonamento o pagamento a consumo
Longevità Di breve durata Stabile a lungo termine

Appendice: Automazione del recupero dell'elenco proxy

Un tocco poetico per l'automatore: recupera nuovi proxy ogni giorno con un semplice assio richiesta e analisi con ciao:

const axios = require('axios'); const cheerio = require('cheerio'); funzione asincrona fetchProxies() { const res = await axios.get('https://free-proxy-list.net/'); const $ = cheerio.load(res.data); const proxies = []; $('#proxylisttable tbody tr').each((i, row) => { const cols = $(row).find('td'); const ip = $(cols[0]).text(); const port = $(cols[1]).text(); const https = $(cols[6]).text() === 'sì'; proxies.push(`${ip}:${port}`); }); restituisci proxy; }

Lascia che i tuoi script respirino ogni mattina l'aria più fresca dei prati proxy ed espirino le loro automazioni web con delicatezza ed entusiasmo.

Teofilo Beauvais

Teofilo Beauvais

Analista proxy

Théophile Beauvais è un analista proxy di 21 anni presso ProxyMist, dove è specializzato nella cura e nell'aggiornamento di elenchi completi di server proxy da tutto il mondo. Con un'innata attitudine per la tecnologia e la sicurezza informatica, Théophile è diventato un membro fondamentale del team, garantendo la fornitura gratuita di server proxy SOCKS, HTTP, elite e anonimi affidabili agli utenti di tutto il mondo. Nato e cresciuto nella pittoresca città di Lione, la passione di Théophile per la privacy digitale e l'innovazione è nata in giovane età.

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 *