Troubleshooting Guide
Solutions to common issues and error codes when using PepeProxy.
Common Error Codes
HTTP 407 - Proxy Authentication Required
Error Message:
HTTP/1.1 407 Proxy Authentication Required Causes:
- Incorrect username or password
- Missing authentication credentials
- Expired proxy credentials
Solutions:
- Verify your credentials:
# Make sure username and password are correct
proxy = 'http://YOUR_USERNAME:YOUR_PASSWORD@us-01.pepeproxy.com:2333' - Check for special characters: If your password contains special characters, URL-encode them:
from urllib.parse import quote
username = 'user123'
password = 'p@ss&word!'
proxy = f'http://{quote(username)}:{quote(password)}@us-01.pepeproxy.com:2333' - Regenerate proxies: If credentials are expired or invalid, generate new proxies from your dashboard.
HTTP 403 - Forbidden
Error Message:
HTTP/1.1 403 Forbidden Causes:
- Target website blocking the proxy IP
- Website detecting automated traffic
- Rate limiting triggered
- Geo-restrictions
Solutions:
Rotate to a different IP: Use rotating proxies or generate new sticky session proxies.
Add realistic headers:
headers = {
'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36',
'Accept': 'text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8',
'Accept-Language': 'en-US,en;q=0.5',
'Accept-Encoding': 'gzip, deflate, br',
'Connection': 'keep-alive',
'Upgrade-Insecure-Requests': '1'
} - Slow down requests:
import time
for url in urls:
response = requests.get(url, proxies=proxies)
time.sleep(3) # 3-second delay between requests - Try a different location: Some websites have stricter blocking for certain countries. Try proxies from a different country.
HTTP 429 - Too Many Requests
Error Message:
HTTP/1.1 429 Too Many Requests Causes:
- Sending requests too quickly
- Hitting rate limits on target website
- Using same IP for too many requests
Solutions:
- Implement exponential backoff:
import time
import random
def fetch_with_retry(url, max_retries=5):
for i in range(max_retries):
try:
response = requests.get(url, proxies=proxies, timeout=30)
if response.status_code == 429:
wait = (2 ** i) + random.random()
print(f"Rate limited. Waiting {wait:.2f} seconds...")
time.sleep(wait)
continue
response.raise_for_status()
return response
except requests.exceptions.RequestException as e:
if i == max_retries - 1:
raise
return None Use rotating proxies: Fresh IP for each request reduces rate limit issues.
Add delays:
time.sleep(random.uniform(2, 5)) # Random delay between 2-5 seconds HTTP 503 - Service Unavailable
Error Message:
HTTP/1.1 503 Service Unavailable Causes:
- Target website is down or overloaded
- Temporary network issues
- Website blocking suspected bot traffic
Solutions:
- Retry with exponential backoff:
def fetch_with_retry(url, max_retries=3):
for i in range(max_retries):
try:
response = requests.get(url, proxies=proxies, timeout=30)
response.raise_for_status()
return response
except requests.exceptions.RequestException:
if i < max_retries - 1:
time.sleep(2 ** i)
continue
raise Check if website is down: Try accessing the URL directly without proxy to confirm it’s not a website issue.
Rotate IPs: Generate new proxies if the issue persists.
Connection Timeout
Error Message:
requests.exceptions.ConnectTimeout: HTTPSConnectionPool Causes:
- Network connectivity issues
- Slow proxy response
- Firewall blocking connection
- Target website taking too long to respond
Solutions:
- Increase timeout:
response = requests.get(
url,
proxies=proxies,
timeout=(10, 60) # (connect timeout, read timeout)
) Check your internet connection: Ensure you have stable internet connectivity.
Try a different host location: Switch between DE, US, or CIS proxy hosts for better latency.
Verify proxy credentials: Make sure the proxy URL is correct and credentials are valid.
SSL/TLS Certificate Errors
Error Message:
SSLError: [SSL: CERTIFICATE_VERIFY_FAILED] Causes:
- SSL certificate verification issues
- MITM proxy configuration
- Outdated SSL libraries
Solutions:
- Update SSL libraries:
pip install --upgrade certifi urllib3 requests - Verify SSL (recommended):
response = requests.get(url, proxies=proxies, verify=True) - Disable verification (NOT recommended for production):
import urllib3
urllib3.disable_warnings(urllib3.exceptions.InsecureRequestWarning)
response = requests.get(url, proxies=proxies, verify=False) DNS Resolution Errors
Error Message:
requests.exceptions.ConnectionError: Failed to resolve us-01.pepeproxy.com Causes:
- DNS server issues
- Network connectivity problems
- Incorrect proxy hostname
Solutions:
Check internet connection: Verify you’re connected to the internet.
Flush DNS cache:
# Windows
ipconfig /flushdns
# macOS
sudo dscacheutil -flushcache; sudo killall -HUP mDNSResponder
# Linux
sudo systemd-resolve --flush-caches Try alternative DNS: Use Google DNS (8.8.8.8) or Cloudflare DNS (1.1.1.1).
Verify hostname: Ensure you’re using the correct proxy hostname:
us-01.pepeproxy.com
Library-Specific Issues
Python Requests
Issue: Proxy not being used
# ❌ Wrong - proxies param is misspelled
response = requests.get(url, proxy=proxies)
# ✅ Correct
response = requests.get(url, proxies=proxies) Issue: SOCKS proxy not working
Install socks support:
pip install requests[socks] Then use:
proxies = {
'http': 'socks5://username:password@us-01.pepeproxy.com:2333',
'https': 'socks5://username:password@us-01.pepeproxy.com:2333'
} Node.js / Axios
Issue: Proxy authentication failing
// ❌ Wrong - missing auth
const agent = new HttpsProxyAgent('http://us-01.pepeproxy.com:2333');
// ✅ Correct
const agent = new HttpsProxyAgent('http://username:password@us-01.pepeproxy.com:2333'); Issue: Self-signed certificate error
// Add rejectUnauthorized option
const agent = new HttpsProxyAgent({
host: 'us-01.pepeproxy.com',
port: 2333,
auth: 'username:password',
rejectUnauthorized: true, // Set to false only for testing
}); Puppeteer / Playwright
Issue: Proxy not applying to browser
// ❌ Wrong - missing --proxy-server flag
const browser = await puppeteer.launch();
// ✅ Correct
const browser = await puppeteer.launch({
args: ['--proxy-server=us-01.pepeproxy.com:2333'],
});
// Authenticate on each page
page.authenticate({
username: 'your_username',
password: 'your_password',
}); Issue: Page timeout with proxy
await page.goto(url, {
timeout: 60000, // Increase timeout to 60 seconds
waitUntil: 'networkidle2',
}); Performance Issues
Slow Response Times
Symptoms:
- Requests taking longer than expected
- Frequent timeouts
Solutions:
Choose closer host location:
- Europe → DE host
- Americas → US host
- Asia/Eastern Europe → CIS host
Reduce target location distance: If scraping US websites, use US-based residential IPs for lower latency.
Check network connectivity: Run speed test to verify your internet connection.
Optimize request size: Only download what you need:
response = requests.get(url, proxies=proxies, stream=True) # Only read first 1KB content = response.raw.read(1024)
High Traffic Consumption
Symptoms:
- Balance depleting faster than expected
- Traffic usage higher than anticipated
Solutions:
- Avoid downloading unnecessary resources:
# Block images, CSS, fonts in Puppeteer
await page.setRequestInterception(True)
page.on('request', request => {
const resourceType = request.resourceType()
if (['image', 'stylesheet', 'font'].includes(resourceType)) {
request.abort()
} else {
request.continue()
}
}) - Use HEAD requests when possible:
# Check if URL exists without downloading content
response = requests.head(url, proxies=proxies) - Implement caching:
import requests_cache
requests_cache.install_cache('proxy_cache', expire_after=3600) - Monitor usage: Check your dashboard regularly to track traffic consumption.
Debugging Tips
Enable Debug Logging
Python:
import logging
import http.client as http_client
http_client.HTTPConnection.debuglevel = 1
logging.basicConfig()
logging.getLogger().setLevel(logging.DEBUG)
requests_log = logging.getLogger("requests.packages.urllib3")
requests_log.setLevel(logging.DEBUG)
requests_log.propagate = True Node.js:
// Set environment variable
process.env.NODE_DEBUG = 'http,https'; Test Proxy Connection
Quick test:
curl -x http://username:password@us-01.pepeproxy.com:2333 https://api.ipify.org Python test:
import requests
proxy = 'http://username:password@us-01.pepeproxy.com:2333'
proxies = {'http': proxy, 'https': proxy}
try:
# Check external IP
response = requests.get('https://api.ipify.org?format=json', proxies=proxies, timeout=10)
print(f"Proxy IP: {response.json()['ip']}")
print("✓ Proxy is working!")
except Exception as e:
print(f"✗ Proxy error: {e}") Verify Proxy Location
import requests
proxies = {'http': proxy, 'https': proxy}
response = requests.get('http://ip-api.com/json/', proxies=proxies)
data = response.json()
print(f"IP: {data['query']}")
print(f"Country: {data['country']}")
print(f"City: {data['city']}")
print(f"ISP: {data['isp']}") Account Issues
Insufficient Balance
Error:
Error: Insufficient balance to generate proxies Solution: Add balance to your account through the billing page. Minimum top-up is $5 USD.
Account Suspended
Symptoms:
- Cannot generate new proxies
- Existing proxies stop working
- Login shows suspension notice
Causes:
- Violation of terms of service
- Prohibited activities detected
- Payment disputes
Solution: Contact support for account review and reinstatement.
Proxies Not Generating
Symptoms:
- “Generate Proxies” button doesn’t work
- No proxies appear after generation
- Error message during generation
Solutions:
- Check balance: Ensure you have sufficient balance ($5 minimum)
- Verify traffic allocation: Must allocate at least 1 MB per proxy
- Clear browser cache: Try refreshing the page or clearing cache
- Try different browser: Test in incognito/private mode
- Contact support: If issue persists, reach out to our team
Still Having Issues?
If you’ve tried the solutions above and still experiencing problems:
- Check our status page: Verify there are no ongoing outages
- Review documentation: Ensure configuration matches our guides
- Contact support: Reach out through support page with:
- Detailed error description
- Error messages/logs
- Steps to reproduce
- Code snippets (if applicable)
- Your account email
Our support team typically responds within 24 hours.
Need more help? Contact support →