Risposta rapida
Come uso un proxy ISP statico nel codice?
Passa l'URL del proxy http://USERNAME:PASSWORD@IP:PORT (o socks5h:// per SOCKS5) al tuo client HTTP: --proxy di curl, l'argomento proxies di Python requests, o un agent in Node.js. PinnedIP affitta IP ISP USA dedicati con entrambi i protocolli da 2,03 USD per 30 giorni (ottobre 2026); senza KYC, crypto.
curl
curl supporta entrambi i protocolli nativamente. socks5h fa sì che il proxy risolva i nomi host.
curl -s --proxy http://USERNAME:[email protected]:HTTP_PORT https://api.ipify.org?format=json
curl -s --proxy socks5h://USERNAME:[email protected]:SOCKS_PORT https://api.ipify.org?format=jsonPython (requests)
Installa requests (e requests[socks] per SOCKS5). Una sessione riutilizza la connessione, il che è rispettoso verso la destinazione e veloce.
import requests
PROXY = "http://USERNAME:[email protected]:8080" # or socks5h://...:SOCKS_PORT
session = requests.Session()
session.proxies = {"http": PROXY, "https": PROXY}
session.headers["User-Agent"] = "price-check/1.0 (contact: [email protected])"
response = session.get("https://api.ipify.org?format=json", timeout=20)
response.raise_for_status()
print(response.json()["ip"])
import itertools
import time
import requests
IPS = ["203.0.113.10", "203.0.113.11", "203.0.113.12"]
USER, PASSWORD, PORT = "USERNAME", "PASSWORD", 8080
URLS = ["https://example.com/", "https://example.org/"]
pool = itertools.cycle(IPS)
for url in URLS:
ip = next(pool)
proxy = f"http://{USER}:{PASSWORD}@{ip}:{PORT}"
r = requests.get(url, proxies={"http": proxy, "https": proxy}, timeout=20)
print(ip, url, r.status_code)
time.sleep(5) # keep a polite pace
Node.js
Il modulo integrato fetch di Node non accetta un'opzione proxy; usa ProxyAgent del pacchetto undici per i proxy HTTP (Node 18 o successivo).
const { ProxyAgent, fetch } = require('undici');
const agent = new ProxyAgent('http://USERNAME:[email protected]:8080');
(async () => {
const res = await fetch('https://api.ipify.org?format=json', { dispatcher: agent });
const body = await res.json();
console.log(body.ip);
})();
Quali regole si applicano alle richieste automatizzate?
Invia richieste a un ritmo che il sito possa gestire, identifica il tuo client quando possibile, rispetta robots.txt e i termini del sito, e non raccogliere dati personali che non hai il diritto di trattare. L'online banking, i portali governativi e di pagamento sono bloccati su ogni IP, così come le porte SMTP 25, 465 e 587. L'elenco completo è nella politica di uso accettabile.
Esempi di codice: FAQ
Perché usare socks5h invece di socks5?
Con socks5h il proxy risolve il nome host, quindi anche le risoluzioni DNS passano attraverso l'IP USA. Con socks5 è la tua macchina a risolvere prima i nomi.
Perché la mia richiesta restituisce 407?
Il proxy non ha ricevuto credenziali valide. Controlla username e password, oppure aggiungi il tuo IP all'allowlist nell'area clienti e rimuovi le credenziali.
Posso eseguire molte richieste in parallelo su un solo IP?
Sì, entro il fair use. Molti siti limitano le richieste per IP, quindi distribuisci il lavoro pesante su più IP e mantieni un ritmo rispettoso.