Proxy format converter
Providers export proxies as host:port:user:pass, user:pass@host:port or a full proxy URL, and every tool wants its own. Paste yours, one per line or as columns from a spreadsheet, and pick the format you need. It all happens in this page: nothing you paste is sent anywhere.
This opens on an example to type over: made-up logins on documentation addresses, in three of the shapes dashboards export.
Which format your tool takes
| Tool | What it takes | Guide |
|---|---|---|
| curl | A proxy URL after -x, login included; HTTP, HTTPS and SOCKS | curl |
| wget | A proxy URL in https_proxy and http_proxy; HTTP and HTTPS only | wget |
| Python Requests | A proxy URL for each of http and https in proxies=; SOCKS needs requests[socks] | Python Requests |
| Puppeteer | --proxy-server with host and port only, the login through page.authenticate() | Puppeteer |
| Playwright | A proxy option with server, username and password apart, in launch() or newContext() | Playwright's docs |
| Selenium with Chrome | Host and port only; Chrome cannot take the login from the capability | Selenium |
| Chrome, Windows, macOS, phones | Host and port in the settings; the login is asked for when the first page loads | Set up a proxy |
A password with an @ or a colon in it is written as %40 or %3A inside a proxy URL, so the URL still reads correctly; the other formats keep it as it is. When a line could be read two ways, such as two short names that both look like hosts, the converter asks for user:pass@host:port rather than guess. From a spreadsheet, the first four columns are read as host, port, username and password (or username, password, host and port), a header row is skipped, and any columns after them, such as a country or an expiry date, are left out of the output.
- Test a proxyCheck that the converted line works, in one command
- Proxy errors407, 403, 429 and the rest, by who sends them
- Username and password vs IP allowlisting
- Residential prices at your amount