Senza KYC — nessun documento d'identità, nessun selfie, nessun documento · Targeting per città, stato e CAP su tutti i piani
Lingua: Italiano
Inizia

Documentazione · Python 3.10+

Proxy residenziali Python per città USA: esempi con requests

Esempi copia-incolla con la libreria requests, verificati sintatticamente con python -m py_compile.

Ultimo aggiornamento:

Risposta rapida

Come uso un proxy per città USA in Python?

Costruisci l'URL del proxy dal gateway e da un username con città, poi passalo a requests: http://USERNAME-country-us-state-il-city-chicago:[email protected]:7777. Aggiungi -zip- per un quartiere o -session- per mantenere un solo IP. MetroProxies include il targeting per città, CAP e ASN su ogni piano da 0,50 USD/GB (ottobre 2026). Senza KYC; crypto.

1. Una richiesta da una città
import requests

user = "USERNAME-country-us-state-il-city-chicago"
proxy = f"http://{user}:[email protected]:7777"

r = requests.get("https://ipinfo.io/json", proxies={"http": proxy, "https": proxy}, timeout=30)
r.raise_for_status()
print(r.json().get("city"), r.json().get("org"))

Come faccio il fallback da CAP a città a stato?

I piccoli centri possono non avere IP online in un dato momento. Prova prima la richiesta più stretta, allarga un livello alla volta e restituisci il livello che ha risposto così puoi salvarlo con il risultato. La funzione qui sotto fa esattamente questo e si ferma dopo il livello stato invece di riprovare all'infinito.

2. Fallback CAP → città → stato
import requests

GATEWAY = "gw.metroproxies.com:7777"
USER, PASSWORD = "USERNAME", "PASSWORD"


def fetch_local(url: str, state: str, city: str | None = None, zip_code: str | None = None) -> tuple[str, requests.Response]:
    levels = []
    if city and zip_code:
        levels.append(("zip", f"-state-{state}-city-{city}-zip-{zip_code}"))
    if city:
        levels.append(("city", f"-state-{state}-city-{city}"))
    levels.append(("state", f"-state-{state}"))
    last_error: Exception | None = None
    for level, segment in levels:
        proxy = f"http://{USER}-country-us{segment}:{PASSWORD}@{GATEWAY}"
        try:
            r = requests.get(url, proxies={"http": proxy, "https": proxy}, timeout=30)
            r.raise_for_status()
            return level, r
        except requests.RequestException as e:
            last_error = e
    raise RuntimeError(f"no IP at zip, city or state level: {last_error}")


level, resp = fetch_local("https://ipinfo.io/json", "nm", city="albuquerque", zip_code="87102")
print(level, resp.json().get("city"))
3. Una sessione sticky per un controllo in più passaggi
import requests

user = "USERNAME-country-us-state-wa-city-tacoma-session-tac01-ttl-15"
proxy = f"http://{user}:[email protected]:7777"

with requests.Session() as s:
    s.proxies = {"http": proxy, "https": proxy}
    first = s.get("https://api.ipify.org", timeout=30).text
    # step 1, step 2 ... on your own site, all from the same Tacoma IP
    second = s.get("https://api.ipify.org", timeout=30).text
    print(first, second, "same IP" if first == second else "IP changed: restart the flow")

Quali dettagli Python mettono in difficoltà le persone?

  • Nuovo IP per richiesta: requests.Session() mantiene la connessione aperta, quindi la modalità rotante dà un IP per l'intera sessione. Usa chiamate requests.get() semplici o un nuovo Session per ogni richiesta per ruotare.
  • SOCKS5: installa pip install "requests[socks]" e usa socks5h:// in modo che sia il proxy a risolvere i nomi host, non la tua macchina. Porta 7778.
  • Caratteri speciali nella password: codificali con URL encoding usando urllib.parse.quote(password, safe="").
  • Timeout: impostane sempre uno; le uscite residenziali possono essere più lente di quelle dei data center.
  • Sii rispettoso: mantieni una frequenza di richieste modesta verso ogni sito e segui robots.txt e i suoi termini.

Dove dovrei andare dopo?

Inizia dalla configurazione in cinque minuti, confronta con gli esempi Node.js e curl e mantieni gli IP con le sessioni sticky per città. Tutta la documentazione: documentazione.

Cos'altro chiedono le persone su Python?

Funziona anche httpx?

Sì. In httpx 0.28 e successivi, passa proxy="http://USERNAME-country-us-state-il-city-chicago:[email protected]:7777" a httpx.Client(). Le versioni precedenti usavano un argomento proxies.

Questi esempi sono stati eseguiti tramite il gateway?

Vengono verificati sintatticamente con python -I -m py_compile su Python 3.10+, con USERNAME e PASSWORD come segnaposto. Eseguili con le tue credenziali.

Come ottengo l'ASN dell'IP di uscita?

Il campo org della risposta di ipinfo.io inizia con esso ("AS7922 ..." per Comcast). Per il targeting ASN, aggiungi -asn-7922 all'username; vedi targeting ASN.

1 GB 1,50 USD · senza KYC

Inizia