Sans KYC — pas de pièce d'identité, pas de selfie, pas de documents · Ciblage par ville, État et code ZIP sur tous les forfaits
Langue: Français
Commencer

Docs · Python 3.10+

Proxies résidentiels Python par ville américaine : exemples avec requests

Exemples prêts à copier-coller avec la bibliothèque requests, vérifiés syntaxiquement avec python -m py_compile.

Dernière mise à jour: · 3 min de lecture

Réponse rapide

Comment utiliser un proxy par ville américaine en Python ?

Construisez l'URL du proxy à partir de la passerelle et d'un nom d'utilisateur de ville, puis passez-la à requests : http://USERNAME-country-us-state-il-city-chicago:[email protected]:7777. Ajoutez -zip- pour un quartier ou -session- pour conserver une seule IP. MetroProxies inclut le ciblage par ville, ZIP et ASN sur chaque offre à partir de 0,50 $US/GB (octobre 2026). Sans KYC ; paiement en crypto.

1. Une requête depuis une ville
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"))

Comment faire un fallback de ZIP vers ville puis état ?

Les petits endroits peuvent n'avoir aucune IP en ligne à un moment donné. Essayez d'abord la requête la plus précise, élargissez un niveau à la fois, et renvoyez le niveau qui a répondu pour le stocker avec le résultat. La fonction ci-dessous fait exactement cela et abandonne après le niveau état au lieu de réessayer indéfiniment.

2. Fallback ZIP → ville → état
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. Une session sticky pour une vérification en plusieurs étapes
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")

Quels détails Python piègent les gens ?

  • Nouvelle IP par requête : requests.Session() garde la connexion ouverte, donc le mode rotation donne une IP pour toute la session. Utilisez des appels requests.get() simples ou une nouvelle Session par requête pour rotate.
  • SOCKS5 : installez pip install "requests[socks]" et utilisez socks5h:// pour que le proxy résolve les noms d'hôtes, pas votre machine. Port 7778.
  • Caractères spéciaux dans le mot de passe : encodez-les en URL avec urllib.parse.quote(password, safe="").
  • Timeouts : définissez-en toujours un ; les sorties résidentielles peuvent être plus lentes que celles des data centers.
  • Restez courtois : gardez un débit de requêtes modeste vers chaque site et respectez robots.txt et ses conditions.

Où aller ensuite ?

Commencez par la configuration en cinq minutes, comparez avec les exemples Node.js et curl, et conservez les IP avec les sessions sticky par ville. Toute la doc : documentation.

Que demandent d'autre les gens à propos de Python ?

Est-ce que httpx fonctionne aussi ?

Oui. Dans httpx 0.28 et versions ultérieures, passez proxy="http://USERNAME-country-us-state-il-city-chicago:[email protected]:7777" à httpx.Client(). Les versions plus anciennes utilisaient un argument proxies.

Ces exemples ont-ils été testés sur la passerelle ?

Ils sont vérifiés syntaxiquement avec python -I -m py_compile sur Python 3.10+, avec USERNAME et PASSWORD comme placeholders. Exécutez-les avec vos propres identifiants.

Comment obtenir l'ASN de l'IP de sortie ?

Le champ org de la réponse d'ipinfo.io commence par celui-ci ("AS7922 ..." pour Comcast). Pour le ciblage par ASN, ajoutez -asn-7922 au nom d'utilisateur ; voir ciblage ASN.

1 GB 1,50 $US · sans KYC

Commencer