Không cần KYC — không cần ID, không selfie, không giấy tờ · Nhắm mục tiêu theo thành phố, bang và ZIP trên mọi gói
Ngôn ngữ: Tiếng Việt
Bắt đầu

Tài liệu · Python 3.10+

Proxy dân cư Python theo thành phố Hoa Kỳ: ví dụ với requests

Ví dụ sao chép-dán với thư viện requests, đã kiểm tra cú pháp bằng python -m py_compile.

Cập nhật lần cuối: · 3 phút đọc

Trả lời nhanh

Làm thế nào để dùng proxy thành phố Hoa Kỳ trong Python?

Tạo URL proxy từ gateway và tên người dùng chứa thành phố, rồi truyền vào requests: http://USERNAME-country-us-state-il-city-chicago:[email protected]:7777. Thêm -zip- để chọn khu vực hoặc -session- để giữ một IP. MetroProxies hỗ trợ nhắm mục tiêu theo thành phố, ZIP và ASN trên mọi gói từ 0,50 US$/GB (tháng 10 năm 2026). Không cần KYC; thanh toán bằng crypto.

1. Một yêu cầu từ một thành phố
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"))

Làm thế nào để dự phòng từ ZIP sang thành phố rồi sang bang?

Những nơi nhỏ có thể không có IP trực tuyến tại một thời điểm. Hãy thử yêu cầu hẹp nhất trước, mở rộng dần từng cấp một, và trả về cấp đã phản hồi để bạn có thể lưu kèm kết quả. Hàm bên dưới làm đúng như vậy và dừng sau cấp bang thay vì thử lại mãi mãi.

2. Dự phòng ZIP → thành phố → bang
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. Một phiên dính cho kiểm tra nhiều bước
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")

Chi tiết Python nào khiến người ta hay vướng?

  • IP mới mỗi yêu cầu: requests.Session() giữ kết nối mở, nên chế độ luân chuyển cho một IP cho cả phiên. Dùng các lệnh gọi requests.get() thông thường hoặc một Session mới cho mỗi yêu cầu để luân chuyển.
  • SOCKS5: cài pip install "requests[socks]" và dùng socks5h:// để proxy phân giải tên máy chủ, không phải máy của bạn. Cổng 7778.
  • Ký tự đặc biệt trong mật khẩu: mã hóa URL chúng bằng urllib.parse.quote(password, safe="").
  • Thời gian chờ: luôn đặt một giá trị; đầu ra dân cư có thể chậm hơn đầu ra data-center.
  • Lịch sự: giữ tốc độ yêu cầu tới mỗi trang ở mức vừa phải và tuân theo robots.txt cùng điều khoản của trang.

Tôi nên đi đâu tiếp theo?

Bắt đầu từ thiết lập năm phút, so sánh với các ví dụ Node.js và curl, và giữ IP bằng phiên dính theo thành phố. Toàn bộ tài liệu: tài liệu.

Người ta còn hỏi gì về Python?

httpx có dùng được không?

Có. Trong httpx 0.28 trở lên, truyền proxy="http://USERNAME-country-us-state-il-city-chicago:[email protected]:7777" vào httpx.Client(). Các phiên bản cũ dùng đối số proxies.

Các ví dụ này có được chạy thử với gateway không?

Chúng được kiểm tra cú pháp bằng python -I -m py_compile trên Python 3.10+, với USERNAME và PASSWORD là chỗ giữ chỗ. Hãy chạy chúng bằng thông tin đăng nhập của bạn.

Làm thế nào để lấy ASN của IP đầu ra?

Trường org trong phản hồi của ipinfo.io bắt đầu bằng nó ("AS7922 ..." cho Comcast). Để nhắm mục tiêu theo ASN, thêm -asn-7922 vào tên người dùng; xem nhắm mục tiêu theo ASN.

1 GB 1,50 US$ · không cần KYC

Bắt đầu