Proxy-Seller Guide: Setup, Configuration & Best Practices

⚠️ Affiliate Disclosure: This page contains affiliate links. If you purchase through them we may earn a commission at no extra cost to you. Read our full disclosure.

Key Takeaway:
Every Proxy-Seller setup comes down to three things: the proxy address and port, how you authenticate (allow-listed IP or login and password), and — for residential proxies — the targeting and session suffixes you add to the login. Check the exit IP before you run anything real, and slow down before you rotate harder. For what Proxy-Seller is and whether it suits you, read the Proxy-Seller review first.


Contents

Before You Start: Credentials and Authentication

After you buy from Proxy-Seller (the code EXAMINEIP gives a discount at checkout), the dashboard lists your proxies with their address, port, login and password. Use the values from your own dashboard — every example below uses placeholders.

Two ways to authenticate

  • Login and password. Works from anywhere. The credentials go in the proxy URL or in your tool’s proxy settings. Needed for residential targeting, which is controlled through the login.
  • Allow-listed IP. You register your own public IP address in the dashboard and connect with no credentials. Simplest for browser automation, but it stops working the moment your IP changes — common on home connections. Check yours with the IP address tool, and see dynamic vs static IP addresses.

The proxy URL format

http://LOGIN:PASSWORD@HOST:PORT
socks5h://LOGIN:PASSWORD@HOST:PORT

For residential proxies, Proxy-Seller’s documentation gives regional hosts such as res.proxy-seller.com (Netherlands) and us.res.proxy-seller.com (United States) on port 10000, accepting HTTPS and SOCKS5 on the same port. Static proxies (IPv4, IPv6, ISP, mobile) each have their own address and port in the dashboard; check which port is HTTP and which is SOCKS5 for your plan.

If your password contains characters such as @, : or #, URL-encode it, or the URL will be read wrongly. There’s a Python example in the troubleshooting section.


🔍 Check the Proxy Works

Before you run a script, confirm three things: the connection succeeds, the exit IP isn’t yours, and the location is the one you ordered. ExamineIP’s IP endpoint returns all of that as JSON:

curl -x "http://LOGIN:PASSWORD@res.proxy-seller.com:10000" https://tools.examineip.com/ip.php

The response includes ip, country, isp, asn, and two flags: hosting (the address belongs to a data centre) and proxy (the address is known as a proxy or VPN exit). For a residential proxy you’d expect a consumer ISP and hosting: false; for an IPv4 data centre proxy, hosting: true is normal.

Use it for one-off checks, not inside a scraping loop — it’s a free endpoint with its own limits.

Through SOCKS5

curl --socks5-hostname res.proxy-seller.com:10000 --proxy-user "LOGIN:PASSWORD" https://tools.examineip.com/ip.php

--socks5-hostname (or socks5h:// in a URL) makes the proxy resolve domain names. Plain socks5:// resolves them on your own machine, which sends your DNS lookups outside the proxy — see what is a DNS leak?


Residential Targeting and Sticky Sessions

Residential proxies are controlled through suffixes added to your login, separated by underscores. This is the syntax from Proxy-Seller’s documentation:

Control Suffix Example
Country_c_XX_c_US
City_city_Name_city_New-York
ISP_isp_ID_isp_51811
ASN_asn_Number_asn_12389
ZIP code_zip_Code_zip_10001
Session_s_ID_s_100
Session length_ttl_Time (after _s_)_ttl_30s, _ttl_15m, _ttl_1h

How it behaves:

  • No session suffix: every request gets a fresh IP.
  • Same session ID: the same exit IP, while that address stays online and the session is alive.
  • With a TTL: once the time runs out, the next request gets a new IP. Inactive sessions expire after 60 minutes.
# United States, New York, same IP for 15 minutes
curl -x "http://LOGIN_c_US_city_New-York_s_job42_ttl_15m:PASSWORD@us.res.proxy-seller.com:10000" https://tools.examineip.com/ip.php

Run it twice within 15 minutes and you should see the same IP; change job42 to anything else and you should get a new one.


Python: Requests and Scrapy

Requests: a single proxy

import requests

PROXY = "http://LOGIN:PASSWORD@res.proxy-seller.com:10000"
proxies = {"http": PROXY, "https": PROXY}

r = requests.get("https://tools.examineip.com/ip.php", proxies=proxies, timeout=20)
print(r.json())

The https key still uses an http:// proxy URL. That’s correct: Requests opens an encrypted tunnel through the proxy to the site.

Requests: country targeting with sticky sessions

import time
import uuid
from urllib.parse import quote

import requests

LOGIN = "LOGIN"
PASSWORD = quote("PASSWORD", safe="")   # safe for special characters
HOST = "res.proxy-seller.com:10000"


def proxy_for(country, session_id, ttl="10m"):
    user = f"{LOGIN}_c_{country}_s_{session_id}_ttl_{ttl}"
    url = f"http://{user}:{PASSWORD}@{HOST}"
    return {"http": url, "https": url}


def fetch_all(urls, country="DE", per_session=10, delay=2.0):
    session_id = uuid.uuid4().hex[:12]
    for i, url in enumerate(urls):
        if i and i % per_session == 0:          # new IP every N requests
            session_id = uuid.uuid4().hex[:12]
        r = requests.get(url, proxies=proxy_for(country, session_id), timeout=20)
        print(r.status_code, url)
        time.sleep(delay)                      # be polite to the site

Requests over SOCKS5

# pip install "requests[socks]"
PROXY = "socks5h://LOGIN:PASSWORD@res.proxy-seller.com:10000"
proxies = {"http": PROXY, "https": PROXY}

Scrapy

Scrapy’s built-in proxy middleware reads the proxy from each request’s meta, including credentials in the URL:

import scrapy

PROXY = "http://LOGIN_c_GB:PASSWORD@res.proxy-seller.com:10000"


class PricesSpider(scrapy.Spider):
    name = "prices"
    custom_settings = {
        "DOWNLOAD_DELAY": 2,
        "AUTOTHROTTLE_ENABLED": True,
        "ROBOTSTXT_OBEY": True,
    }

    def start_requests(self):
        for url in ["https://example.com/products"]:
            yield scrapy.Request(url, meta={"proxy": PROXY})

    def parse(self, response):
        self.logger.info("Got %s", response.url)

Browser Automation: Playwright, Selenium, Puppeteer

Playwright (Python) — the easiest option

Playwright accepts a proxy with a username and password directly:

# pip install playwright ; playwright install chromium
from playwright.sync_api import sync_playwright

with sync_playwright() as p:
    browser = p.chromium.launch(proxy={
        "server": "http://res.proxy-seller.com:10000",
        "username": "LOGIN_c_FR_s_demo1_ttl_15m",
        "password": "PASSWORD",
    })
    page = browser.new_page()
    page.goto("https://tools.examineip.com/ip.php")
    print(page.inner_text("body"))
    browser.close()

Selenium (Chrome)

Chrome’s --proxy-server flag doesn’t accept a username and password. The reliable approach is to allow-list your own IP in the Proxy-Seller dashboard and connect without credentials:

from selenium import webdriver

options = webdriver.ChromeOptions()
options.add_argument("--proxy-server=http://203.0.113.10:50100")   # your proxy, IP allow-listed

driver = webdriver.Chrome(options=options)
driver.get("https://tools.examineip.com/ip.php")
print(driver.find_element("tag name", "body").text)
driver.quit()

If you need login authentication in a browser, use Playwright instead.

Puppeteer (Node.js)

const puppeteer = require("puppeteer");

(async () => {
  const browser = await puppeteer.launch({
    args: ["--proxy-server=http://res.proxy-seller.com:10000"],
  });
  const page = await browser.newPage();
  await page.authenticate({ username: "LOGIN_c_US", password: "PASSWORD" });
  await page.goto("https://tools.examineip.com/ip.php");
  console.log(await page.evaluate(() => document.body.innerText));
  await browser.close();
})();

In a normal browser

Firefox has its own proxy settings (Settings → Network Settings → Manual proxy configuration), separate from the operating system. Chrome and Edge use the system settings. A proxy-switching extension is handier if you move between several proxies. After connecting, open the IP address tool, then run the VPN leak test — WebRTC can reveal your real IP address in a browser even when the page itself loads through the proxy.


Check the Addresses You Were Given

Proxy-Seller replaces faulty addresses within a day of purchase and handles refund claims within 72 hours for most products, so check static proxies straight away:

  • Location and network: paste the list into the bulk IP lookup and confirm the countries and ISPs match your order.
  • Blacklists: run any address you’ll rely on through the IP reputation check. An address listed for spam is more likely to be blocked.
  • Ownership: the WHOIS lookup shows which organisation the address range is registered to.
  • Latency: time a request through each proxy to your real target, not to a test page — distance to the target is what matters.

Troubleshooting

Symptom Likely cause Fix
407 Proxy Authentication RequiredWrong login or password, unencoded special characters, or a typo in a suffixCopy credentials from the dashboard; URL-encode the password; test without suffixes first
Worked yesterday, refused todayYou use IP allow-listing and your own IP changedCheck your IP, update the allow-list, or switch to login authentication
TimeoutsWrong port or protocol, a firewall blocking the port, or an exit that went offlineConfirm HTTP vs SOCKS5 port; try another network; start a new session ID
403, CAPTCHAs or empty pagesThe site detects automation or blocks that address typeSlow down first; use realistic headers or a real browser; move from data centre to residential
Wrong countryMissing or misspelled country suffix, or a stale sticky sessionCheck _c_XX; use a new session ID; verify with ip.php
Site sees your real location anywayDNS resolved locally, or WebRTC in a browserUse socks5h://; run the leak test in the browser
SSL certificate errorsA proxy URL written as https:// when the tool expects http://Use http:// for the proxy URL even for HTTPS sites

Encoding a password with special characters

from urllib.parse import quote

password = quote("p@ss:w#rd", safe="")
proxy = f"http://LOGIN:{password}@res.proxy-seller.com:10000"

Retrying without hammering the site

import time
import requests


def fetch_with_retry(url, proxies, attempts=3):
    for n in range(attempts):
        try:
            r = requests.get(url, proxies=proxies, timeout=20)
            if r.status_code == 429:               # rate limited: wait, don't rotate
                time.sleep(int(r.headers.get("Retry-After", 30)))
                continue
            r.raise_for_status()
            return r
        except requests.RequestException as exc:
            print(f"attempt {n + 1} failed: {exc}")
            time.sleep(2 ** n)                    # 1s, 2s, 4s
    return None

Using Proxies Responsibly

  • Read robots.txt and the site’s terms. A proxy changes your address, not the rules.
  • Rate-limit before you rotate. A 429 response means “slow down”. Rotating to dodge it is what gets whole address ranges blocked.
  • Don’t get around logins or paywalls, and don’t run accounts in ways a platform forbids.
  • Treat personal data carefully. Scraping information about people is regulated in the EU and elsewhere, even when it’s publicly visible.
  • Follow Proxy-Seller’s terms. They prohibit torrenting copyrighted material, phishing, brute-force attacks, fraud including ad and click fraud, and other illegal use.

Checking robots.txt correctly in Python — note it’s read from the site root, not the page path:

from urllib.parse import urljoin
from urllib.robotparser import RobotFileParser


def allowed(url, agent="*"):
    rp = RobotFileParser()
    rp.set_url(urljoin(url, "/robots.txt"))
    rp.read()
    return rp.can_fetch(agent, url)

Frequently Asked Questions

HTTP or SOCKS5 — which should I use?

Use HTTP for web requests; almost every scraping library and browser supports it. Use SOCKS5 for non-web traffic or when a tool only speaks SOCKS, and prefer socks5h so DNS goes through the proxy.

Do proxies encrypt my traffic?

No. HTTPS sites stay encrypted end to end, but the proxy itself adds no encryption. For privacy, use a VPN — see VPN or proxy: which is safer?

How do I keep the same IP for a multi-step task?

Add a session suffix with a TTL longer than the task, for example _s_checkout1_ttl_30m, and use the same login for every step.

How many proxies do I need?

There’s no fixed ratio — it depends on how strict the target is. Start small at a slow rate, watch for 403 and 429 responses, and add addresses only when you’re blocked at a rate the site should tolerate.

Can I use Proxy-Seller proxies for Netflix or other streaming?

It isn’t what they’re for. Streaming services block known proxy and data centre addresses, and a proxy that works elsewhere but not on a streaming service doesn’t qualify for a refund.

Why does ip.php say “hosting: true” for my proxy?

The address belongs to a data centre range. That’s expected for IPv4 and IPv6 proxies. For residential proxies, it would suggest the exit isn’t a home connection — worth raising with support within the refund window.


Related Reading

Scroll to Top