Configure any available plan and add-ons. Pay only for 48 hours.
Try proxiesScrape with Selenium and proxies that work in the vanilla driver: whitelist auth instead of credential code, stable IPs for rate limits and geo-specific pages, from $19/mo.
The reason this question exists at all: Chrome has never accepted proxy credentials from automation. Pass user:pass@IP:port to --proxy-server and the browser silently drops the credentials, then blocks your script with a native login popup no driver can click. For years the standard workaround was a small generated extension that injected the username and password at runtime — Chrome 137 (mid-2025) removed the --load-extension switch from branded builds, and the --disable-features flag that re-enabled it was closed in Chrome 142. Frameworks like SeleniumBase patched around the removal through the DevTools protocol, but that’s one more moving part that breaks with major Chrome updates.
IP whitelisting removes the problem instead of working around it. Add the IP of the machine running your scripts in the Dashboard — every plan includes up to five whitelisted source IPs, which covers a typical fleet of scraping servers — and the vanilla driver needs exactly one line:
from selenium import webdriver
options = webdriver.ChromeOptions()
options.add_argument("--proxy-server=IP:port") # whitelisted, so no credentials
driver = webdriver.Chrome(options=options)
driver.get("https://example.com")
No extension, no interception layer, nothing to re-fix after the next browser release. The same option works in headless mode, in Firefox, and in a Selenium Grid proxy setup — whitelist each node’s IP once and every session it hosts is covered.
Rotation stays in your hands: export the package list in any format (TXT, CSV, or a custom template) and hand out addresses to your workers — one exit IP per browser instance is the pattern that scales, and the general mechanics of pools and pacing are covered on the web scraping proxies page. Packages start at 100 IPs, from $19/mo. Product specs are in the adjacent panel, and the comparison table below shows how datacenter packages stack up against other proxy types. For a step-by-step walkthrough — Chrome and Firefox, authentication, and rotation from a list — see the Selenium proxy setup guide.
Four infrastructure types — and the use cases each one fits best.
| Our pick for Selenium Packagesdatacenter IPv4 |
Rotating | ISP | IPv6 | |
|---|---|---|---|---|
| IP source | Datacenter, IPv4 | Datacenterthe same 100,000+ IP pool | Consumer ISP networks | Datacenter |
| IP allocation | Static list | Full pool accessthe exit IP rotates on every request | Static list | Static list |
| List refreshes | Up to 3 per month, free | Not applicable | Up to 3 per month, free | Provider-dependent |
| Pricing model | Per-IP packageunlimited bandwidth | Credit-basedyou pay per request, not per IP | Per-IP packageunlimited bandwidth | Per-IP package |
| Website compatibility | ✓ ~100% | ✓ ~100% | ✓ ~100% | ✕ Limitedmany websites don't support IPv6 |
| Speed | Up to 500 Mbps | Up to 300 Mbps | Up to 500 Mbps | Datacenter-grade |
| Anti-fraud trust | Medium | MediumIP rotation helps | High | Low to medium |
| Price | $from $0.07 per IP/month | $$$from $25.00/month | $$from $0.253 per IP/month | $typically the lowest-cost option |
| Best for | Web scraping and automation at a predictable volume: your own IPs, unlimited bandwidth | API scraping that needs as many different IPs as possible without buying a fixed list | Social media, accounts, long sessions — wherever IP trust matters | Use cases where the target site is guaranteed to support IPv6 |
| Calculate price | Learn more | Learn more | We don't sell these: too many limitations for general-purpose work |
Whitelist access is the base method on every plan — which makes Selenium proxy authentication without Selenium Wire the default here, not a workaround. Copy the example for your stack, or paste it into your AI coding assistant to adapt.
# HTTP or HTTPS proxy curl -x http://login:password@IP:port https://example.com # SOCKS5 curl --socks5-hostname IP:port \ --proxy-user login:password \ https://example.com
import requests proxy = "http://login:password@IP:port" # your proxy from the Dashboard r = requests.get( "https://example.com", proxies={"http": proxy, "https": proxy}, ) print(r.status_code)
import { ProxyAgent } from "undici"; const dispatcher = new ProxyAgent("http://login:password@IP:port"); const res = await fetch("https://example.com", { dispatcher }); console.log(res.status);
$ch = curl_init("https://example.com"); curl_setopt($ch, CURLOPT_PROXY, "IP:port"); curl_setopt($ch, CURLOPT_PROXYUSERPWD, "login:password"); curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); $response = curl_exec($ch);
{
"mcpServers": {
"papaproxy": {
"url": "https://papaproxy.net/account_new/api/v1/mcp",
"headers": {
"Authorization": "Bearer fb_YOUR_API_KEY"
}
}
}
}
claude mcp add --transport http papaproxy \ https://papaproxy.net/account_new/api/v1/mcp \ --header "Authorization: Bearer fb_YOUR_API_KEY"
# Ask your agent in plain English
What would 500 datacenter proxies in the US
and Germany cost for 3 months? Don't buy yet.
Add our office IP 203.0.113.10 to IP whitelisting
on all active services.
Why did errors increase yesterday?
Break them down by category.
Choose a standard format or create a custom one with any field order and delimiter your software requires.
See the FAQ for the ports used by each protocol.
You can automate purchases, renewals, whitelist changes, and proxy list exports. Create an API key in your Dashboard in a couple of clicks.
Claude, Cursor, and other agents buy proxies, renew plans, and export updated proxy lists through an access token you create in your Dashboard. See how it works.
Per-IP prices shown are for the largest package size. Get an exact quote in the calculator above.
| IP | Country | Port | Protocol | |
|---|---|---|---|---|
| 212.183.88.215 | AT | 80 | HTTP | |
| 47.243.92.199 | HK | 3128 | HTTP | |
| 212.183.88.153 | AT | 80 | HTTP | |
| 212.183.88.13 | AT | 80 | HTTP | |
| 203.95.199.159 | KH | 8080 | HTTP | |
| 154.92.9.3 | JP | 80 | HTTP | |
| 113.204.79.230 | CN | 9091 | HTTP | |
| 181.214.1.97 | AE | 80 | HTTP | |
| 219.93.101.63 | MY | 80 | HTTP | |
| 185.18.250.64 | CH | 80 | HTTP |
A few service metrics—and feedback from our customers.
I've been looking for stable proxies for not much money for a long time. This service turned out to be the best in terms of price and quality. If it keeps going this way, I will not look for anything else. I took four proxies for different purposes and they all turned out to be just great.
They work with programs that require proxies all the time. The servers bought on this site justify their price by 100%. I have not noticed any slowdowns in loading sites, although the speed is not super high. Everything works fine and stable. The only thing I would like to see on this website is buying proxies for a shorter time period. I, for example, need servers for a couple of days only.
Excellent product well done. Thank you to the service for such good and prompt support. There have been issues with the subscription, which have been resolved reasonably and with minimal delay.
My competitors have much higher prices than here. At first I thought the quality of their servers has suffered, but it has turned out to be okay. I use proxy for targeting in Instagram, all my servers have proved to be good. I have not seen any outages.
Can't find your answer? Message us in live chat — real humans reply.
You didn't do anything wrong — Chrome ignores credentials embedded in the --proxy-server value, so the proxy never receives them and the browser falls back to the native login prompt your script can't click. The old fix — a generated extension that answered the auth challenge — stopped working when Chrome 137 removed the --load-extension switch from branded builds (and Chrome 142 closed the --disable-features flag that briefly re-enabled it). You can still handle the challenge through the DevTools protocol (Fetch.continueWithAuth), but that's auth code you now own and maintain. The simpler route is to remove authentication from the picture: whitelist your server's IP in the Dashboard and pass a plain --proxy-server=IP:port. At PapaProxy.net whitelisting is the primary access method, so this works on any plan with no extra code.
Not for new projects. The original package was archived in January 2024 (its last release dates back to October 2022) and fails at import on current dependency versions. Community forks exist, but the architectural cost remains: Selenium Wire routes all browser traffic through a local interception proxy with its own TLS certificate — an extra hop that slows page loads and adds a MITM signature some targets detect. If the only reason you reached for it was proxy authentication, whitelisted IPs make the whole layer unnecessary: the vanilla driver connects straight to the proxy.
Rotating proxies for Selenium scraping come in two shapes, and the cheaper one is usually enough. --proxy-server is fixed for the lifetime of a browser instance, so rotation happens in your code: keep the exported proxy list, and each time you launch a driver, take the next address from it. For parallel scraping, assign each worker its own exit IP — packages start at 100 IPs, so a hundred concurrent browsers can each run behind a different address. Export the list from the Dashboard in TXT, CSV, or a custom field order to match whatever rotation logic you already have. If you'd rather skip managing the list entirely, rotating proxies handle the switching for you.
Yes — --proxy-server=socks5://IP:port works in Chrome and Firefox, with one caveat: the credentials limitation applies to SOCKS5 too, and there's no extension workaround for SOCKS authentication at all. With IP whitelisting that constraint disappears, so both protocols are equally usable. Every address in our packages answers on HTTP, HTTPS, SOCKS4, and SOCKS5 — the protocol is a client-side setting, not a purchase option, so you can switch your fleet between HTTP and SOCKS5 without touching the proxy list.
A different proxy type may be a better fit for your use case. All products use the same Dashboard and support team.
An IP reserved exclusively for you, available from a single IP. Speeds of up to 500 Mbps per proxy.
Learn moreStatic ISP-registered residential IPs for use cases where network origin matters.
Learn morePay per request and access the full 100,000+ IP pool through a single gateway. Built for web scraping and API workloads.
Learn moreSOCKS5 with UDP support — for gaming, streaming, and VoIP.
Learn moreWe can sign a contract and provide all the documents your accounting team needs. Most business orders are activated within 24 hours of your request.