프록시 설정 방법: 주거용 프록시 연결부터 코드 예시까지
이 가이드는 ProxyMay 계정을 만들고 게이트웨이 gate.proxymay.com:7000 주소에 연결해 첫 요청을 보내기까지의 과정을 순서대로 보여 드려요. 사용자 이름 규칙을 익히면 나라, 도시, IP 유지 세션을 코드 한 줄로 바꿀 수 있어요.
01
계정 만들기와 접속 토큰 저장
가입 화면에서 계정을 만들면 접속 토큰이 하나 발급돼요. 토큰은 pm_XXXXXXXX-XXXXXXXX-XXXXXXXX-XXXXXXXX 형식이고, 로그인할 때와 프록시에 접속할 때 비밀번호로 함께 써요.
서버에는 토큰의 해시와 마지막 4글자만 남아요. 그래서 화면을 닫기 전에 비밀번호 관리 프로그램이나 안전한 메모에 꼭 저장해 두세요.
토큰을 잃어버리면 되찾을 수 없어요. 코드에 넣을 때는 환경 변수로 빼 두면 저장소에 실수로 올라가는 일을 막을 수 있어요.
한 IP 주소에서는 계정을 3개까지 만들 수 있고, 로그인은 10분에 10번까지 시도할 수 있어요.
02
잔액 충전하고 상품 고르기
프록시를 쓰려면 먼저 잔액을 충전해요. 한 번 충전한 잔액은 유동 주거용 프록시, 고정 ISP 프록시, 데이터센터 프록시, 모바일 프록시에 함께 쓸 수 있어요.
유동 주거용은 쓴 트래픽만큼 $0.80/GB부터, 모바일은 $4.00/GB부터 빠져나가요. 예를 들어 $100을 충전해 유동 주거용에 쓰면, $100을 $0.80/GB 단가로 나눈 만큼의 트래픽을 쓸 수 있어요. 충전 금액과 보너스는 요금 안내에서 확인하세요.
03
사용자 이름 만들기: 나라, 도시, 세션 지정
사용자 이름은 user로 시작하고, 필요한 조건을 -로 이어 붙여요. 비밀번호는 언제나 접속 토큰이에요. 조건을 하나도 붙이지 않으면 나라를 정하지 않은 유동 주거용 IP로 연결돼요.
| 부분 | 뜻 | 예시 |
|---|---|---|
| type-mobile | 통신사 모바일 네트워크 IP 사용 | user-type-mobile-country-de |
| country-xx | 나라 2글자 코드 | user-country-jp |
| city-name | 도시 이름 소문자, 띄어쓰기는 _ | user-country-us-city-new_york |
| session-name | 영문과 숫자 16자 이내, 같은 이름은 같은 IP | user-country-jp-session-shop1 |
조건은 type, country, city, session 순서로 적으면 읽기 쉬워요. 예를 들어 user-country-jp-city-tokyo-session-shop1은 도쿄 IP를 세션 shop1 이름으로 붙잡아 두라는 뜻이에요.
모바일 프록시는 나라 단위로만 고를 수 있어서 type-mobile에는 city를 붙이지 않아요. 나라 코드와 도시 목록은 지원 지역에서 볼 수 있어요.
04
HTTP, SOCKS5 접속 형식과 curl로 IP 확인
HTTP와 SOCKS5는 같은 주소 gate.proxymay.com, 같은 포트 7000 값을 써요. 프로그램이 받는 형식에 맞춰 아래 셋 중 하나를 고르세요.
http://user-country-jp:[email protected]:7000
socks5://user-country-jp:[email protected]:7000
gate.proxymay.com:7000:user-country-jp:YOUR_TOKEN대시보드의 연결 화면에서도 같은 형식을 바로 만들어 복사할 수 있어요. 앞의 두 줄은 URL 형식이고, 마지막 줄은 주소:포트:이름:비밀번호 순서를 받는 도구용이에요.
코드를 쓰기 전에 터미널에서 연결이 되는지 먼저 확인하면 문제를 빨리 좁힐 수 있어요. 응답의 ip, country, city 값이 사용자 이름에 넣은 조건과 맞는지 보세요.
curl -x http://user-country-us:[email protected]:7000 https://ipinfo.io/json
# SOCKS5로 같은 확인
curl -x socks5h://user-country-us:[email protected]:7000 https://ipinfo.io/jsonSOCKS5에서는 socks5h를 쓰면 도메인 이름 조회도 프록시 쪽에서 처리돼요.
05
Python requests와 Scrapy에서 프록시 쓰는 방법
requests는 proxies 딕셔너리에 http와 https를 같은 주소로 넣으면 돼요. 아래 코드는 일본 IP를 세션 shop1으로 유지하면서 요청을 보내요.
import requests
proxy = "http://user-country-jp-session-shop1:[email protected]:7000"
proxies = {"http": proxy, "https": proxy}
r = requests.get("https://ipinfo.io/json", proxies=proxies, timeout=30)
print(r.status_code, r.json())SOCKS5를 쓰려면 pip install requests[socks]를 설치한 뒤 주소 앞부분을 socks5h://로 바꾸세요.
Scrapy는 요청의 meta에 proxy 값을 넣으면 기본 미들웨어가 인증까지 처리해요. 세션 이름을 요청마다 다르게 붙이면 페이지별로 다른 IP를 쓸 수 있어요.
import scrapy
class IpSpider(scrapy.Spider):
name = "ipcheck"
def start_requests(self):
proxy = "http://user-country-gb:[email protected]:7000"
yield scrapy.Request("https://ipinfo.io/json", meta={"proxy": proxy})
def parse(self, response):
yield response.json()06
Node.js 프록시 연결 예시
Node.js 18 이상에서는 undici의 ProxyAgent를 fetch의 dispatcher로 넘기면 돼요. axios를 쓴다면 https-proxy-agent 패키지로 같은 주소를 넘기면 돼요.
// npm install undici
import { ProxyAgent, fetch } from "undici";
const agent = new ProxyAgent("http://user-country-de:[email protected]:7000");
const res = await fetch("https://ipinfo.io/json", { dispatcher: agent });
console.log(await res.json());07
Playwright, Puppeteer 브라우저 프록시 설정
브라우저 자동화 도구는 주소와 인증 정보를 따로 받아요. 사용자 이름에 조건을 넣고 비밀번호에 토큰을 넣으세요.
// Playwright
const { chromium } = require("playwright");
const browser = await chromium.launch({
proxy: {
server: "http://gate.proxymay.com:7000",
username: "user-country-fr-city-paris-session-web1",
password: "YOUR_TOKEN",
},
});
const page = await browser.newPage();
await page.goto("https://ipinfo.io/json");
// Puppeteer
const browser2 = await puppeteer.launch({ args: ["--proxy-server=http://gate.proxymay.com:7000"] });
const page2 = await browser2.newPage();
await page2.authenticate({ username: "user-country-fr", password: "YOUR_TOKEN" });로그인 상태를 유지하는 작업이라면 세션 이름을 붙여서 같은 IP로 페이지를 이어서 여는 게 좋아요.
08
IP 유지 세션과 IP 교체는 어떻게 나눠 쓰나요?
세션을 붙이지 않으면 요청마다 새 IP가 배정돼요. 검색 순위 확인이나 가격 수집처럼 요청이 서로 독립적인 작업에 잘 맞아요.
로그인, 장바구니, 여러 단계로 이어지는 화면은 IP가 바뀌면 끊길 수 있어요. 이럴 때는 session-이름을 붙여서 같은 IP를 최대 120분 유지하세요.
- 작업 단위마다 세션 이름을 하나씩 정해요(예: cart1, cart2).
- IP를 바꾸고 싶으면 세션 이름만 새로 바꾸면 돼요.
- 한 달 내내 같은 IP가 필요하면 고정 ISP 프록시가 더 맞아요.
09
연결 오류 해결 방법
- 407 Proxy Authentication Required: 사용자 이름 형식이나 토큰이 틀렸다는 뜻이에요. user로 시작하는지, 조건 사이에 - 가 있는지, 토큰을 앞뒤 공백 없이 넣었는지 확인하세요.
- 연결 거부나 시간 초과: 주소 gate.proxymay.com, 포트 7000 값을 다시 확인하고, 회사 방화벽이 바깥 포트를 막고 있지 않은지 보세요. 잔액이 남아 있는지도 확인하세요.
- 다른 나라가 보일 때: 나라 코드가 2글자인지, 도시 이름이 소문자와 _로 적혔는지 확인하세요. curl로 ipinfo.io 결과를 먼저 보고, 코드 쪽 캐시나 다른 프록시 설정이 겹치지 않는지 살펴보세요.
- 120분이 지나 IP가 바뀌었을 때: IP 유지 세션은 최대 120분까지라서 정상이에요. 작업을 그 시간 안에 나누거나 새 세션 이름으로 다시 시작하세요.
그 밖의 질문은 자주 묻는 질문에 모아 두었어요.
10
프록시를 책임 있게 쓰는 방법
공개 데이터 수집, 광고 확인, 검색 순위 확인, 가격 모니터링, 사이트와 현지화 테스트, 본인 계정 관리에 써 주세요. 다른 사람 계정에 허락 없이 접근하거나 스팸, 사기, 공격, 불법 콘텐츠처럼 법이나 대상 사이트의 권리를 침해하는 용도는 금지예요.
요청 간격을 적당히 두고 대상 사이트의 이용 규칙을 지키면 작업도 더 안정적으로 이어져요. 자세한 기준은 이용 약관에 있어요.
함께 보면 좋은 페이지
- 유동 주거용 프록시유동 주거용 프록시는 통신사가 일반 가정에 배정한 IP를 거쳐 요청을 보내는 상품이에요. 요청마다 다른 IP로 나가기 때문에 많은 양의 조회를 여러 주소와 지역에 고르게 나눌 수 있어요.
- 지원 지역ProxyMay는 60개 나라, 175개 도시의 IP를 제공해요. 이 페이지에서는 사용자 이름에 위치를 넣는 방법, 나라와 도시 중 어디까지 지정할지, 지역별 지원 나라를 한곳에 정리했어요.
- 요금ProxyMay의 네 상품은 모두 같은 잔액에서 차감돼요. 아래에서 과금 방식, 작업별 비용, 충전 보너스, 결제 순서를 확인하세요.
- 도움말계정, 연결, 상품, 충전, 이용 기준에 관한 질문과 답을 주제별로 정리했어요. 처음 연결한다면 설정 가이드를 먼저 따라 해 보세요.