Réponse rapide
Comment me connecter à MENA Proxies ?
Configurez n’importe quel client HTTP ou SOCKS5 sur gw.menaproxies.com, port 7777 pour HTTP et HTTPS ou port 7778 pour SOCKS5, avec l’identifiant et le mot de passe de votre tableau de bord MENA Proxies. Mettez le pays dans le nom d’utilisateur, comme USERNAME-country-ae pour les ÉAU, et ajoutez un ID de session pour conserver une IP. Les forfaits commencent à 1,88 $US pour 1 GB, sans KYC.
Paramètres de connexion
| Hôte de la passerelle | gw.menaproxies.com |
|---|---|
| Port HTTP et HTTPS | 7777 |
| Port SOCKS5 | 7778 |
| Format du nom d’utilisateur | USERNAME-country-{cc}-city-{city}-asn-{asn}-session-{id}-ttl-{minutes} |
| Codes pays | ae, sa, qa, kw, bh, om, il, jo, iq, lb, eg, ma, dz, tn |
| ID des villes | En minuscules, _ pour les espaces : dubai, abu_dhabi, riyadh, cairo, casablanca |
| ASN | asn-<number>, par exemple asn-5384 (e&, ÉAU), sans frais supplémentaires |
| Authentification | Nom d'utilisateur et mot de passe sur chaque formule, ou une liste blanche IP (jusqu'à 10 IP). Sous-utilisateurs avec leurs identifiants et plafonds de trafic. Clés API révoquables à tout moment |
| Sessions | Chaque nouvelle connexion utilise une IP du pool, généralement différente ; pour obtenir une nouvelle IP à chaque requête, envoyez une requête par connexion (désactivez le keep-alive). Sticky : jusqu’à 30 minutes (l’IP peut changer avant) |
Du paiement à la première requête
Rechargez et achetez un forfait
Rechargez au minimum 25 $US en BTC, USDT, USDC, ETH, SOL, LTC, puis achetez 1 GB (1,88 $US) ou plus depuis votre solde.
Copiez vos identifiants
Le tableau de bord vous montre le nom d’utilisateur et le mot de passe du proxy. Créez un sous-utilisateur par projet si vous souhaitez des totaux d’utilisation séparés et un plafond de trafic pour chacun.
Ajoutez le pays au nom d’utilisateur
USERNAME-country-sapour l’Arabie saoudite,USERNAME-country-eg-city-cairopour Le Caire lorsque des IP sont en ligne là-bas.Vérifiez la sortie
Demandez un service d'information IP via le proxy et confirmez le pays et le réseau. Voir comment vérifier la localisation d’un proxy.
Comment tester avec curl ?
Utilisez -x pour les proxies HTTP et --socks5-hostname pour SOCKS5 ; la variante -hostname envoie le nom d’hôte au proxy au lieu de le résoudre sur votre machine.
# UAE, a new home IP on each new connection (each curl run)
curl -x http://USERNAME-country-ae:[email protected]:7777 https://ipinfo.io/json
# Riyadh, the same IP for 30 minutes (session id r1)
curl -x http://USERNAME-country-sa-city-riyadh-session-r1-ttl-30:[email protected]:7777 https://ipinfo.io/json
# Egypt over SOCKS5, hostname resolved by the proxy
curl --socks5-hostname gw.menaproxies.com:7778 -U USERNAME-country-eg:PASSWORD https://ipinfo.io/jsonComment l’utiliser depuis Python, avec des tentatives ?
Les connexions domestiques peuvent fluctuer, donc une requête peut parfois échouer avec une IP lente ou déconnectée. Retentez avec une nouvelle IP plutôt que d’attendre : sans ID session, chaque tentative reçoit une nouvelle IP. Encodez le mot de passe s’il contient des caractères spéciaux.
import time
from urllib.parse import quote
import requests
GATEWAY = "gw.menaproxies.com:7777"
USER, PASSWORD = "USERNAME", quote("PASSWORD", safe="")
def fetch(url, country, session=None, ttl=30, tries=3):
for attempt in range(1, tries + 1):
user = f"{USER}-country-{country}"
if session: # a new session ID per attempt, so each retry gets a new IP
user += f"-session-{session}{attempt}-ttl-{ttl}"
proxy = f"http://{user}:{PASSWORD}@{GATEWAY}"
try:
r = requests.get(url, proxies={"http": proxy, "https": proxy}, timeout=30)
if r.status_code < 500:
return r
except requests.RequestException:
pass
if attempt < tries:
time.sleep(2 * attempt) # back off, then retry on a new IP
raise RuntimeError(f"{url} failed {tries} times via {country}")
for cc in ["ae", "sa", "eg"]:
print(cc, fetch("https://ipinfo.io/json", cc).json().get("country"))Comment l’utiliser dans un navigateur avec Playwright ?
Passez la passerelle comme proxy du navigateur et la cible dans le nom d’utilisateur. Réglez la langue et le fuseau horaire pour correspondre au pays, afin que les pages s’affichent comme pour un visiteur local.
from playwright.sync_api import sync_playwright
with sync_playwright() as p:
browser = p.chromium.launch(proxy={
"server": "http://gw.menaproxies.com:7777",
"username": "USERNAME-country-sa-city-riyadh-session-pw1-ttl-30",
"password": "PASSWORD",
})
context = browser.new_context(locale="ar-SA", timezone_id="Asia/Riyadh")
page = context.new_page()
page.goto("https://ipinfo.io/json")
print(page.text_content("body"))
browser.close()Quelles villes et opérateurs puis-je cibler ?
Le ciblage par ville fonctionne si le pool a des IP domicile en ligne dans cette ville. La liste change au fil de la journée, lisez-la avant d’exécuter un ciblage ville : elle s’affiche dans le tableau de bord, et l’API la renvoie avec GET /v1/catalog/countries/{CC}/cities (majuscule dans l’API, minuscule dans le nom d’utilisateur proxy) (voir la documentation API). Si aucune IP n’est en ligne dans une ville, ne ciblez pas la ville et utilisez le ciblage pays.
Pour choisir un opérateur, ajoutez son ASN : USERNAME-country-ae-asn-5384 propose des sorties sur e& aux Émirats. Le ciblage ASN ne coûte rien de plus ; GET /v1/catalog/countries/{CC}/asns liste les ASN en ligne dans un pays, la disponibilité varie.
Exemples d’identifiants villes utiles : dubai, abu_dhabi, sharjah (Émirats) ; riyadh, jeddah, dammam (Arabie Saoudite) ; doha (Qatar) ; cairo, alexandria, giza (Égypte) ; casablanca, rabat (Maroc) ; amman (Jordanie) ; beirut (Liban).
Qu’est-ce qui déconne le plus souvent ?
- 407 Proxy Authentication Required : nom d’utilisateur ou mot de passe incorrect, ou caractère spécial dans le mot de passe non encodé en URL.
- Connexion refusée ou timeout : mauvais port ; les clients HTTP doivent utiliser 7777, les clients SOCKS5 7778.
- Sortie dans un mauvais pays : code pays absent ou mal orthographié dans le nom d’utilisateur ; les codes sont en deux lettres, en minuscules.
- Pas d’IP dans la ville : aucune IP domicile en ligne dans cette ville pour le moment ; utilisez le ciblage pays ou réessayez plus tard.
- Requête refusée à la passerelle : la cible est dans une catégorie bloquée (Sites bancaires, gouvernementaux et portails de paiement, plus ports SMTP (envoi d’e-mails) 25, 465 et 587).
- Plan épuisé : le plan a consommé tous ses GB ; achetez-en un autre avec votre solde.
Questions de configuration
MENA Proxies supporte-t-il SOCKS5 ?
Oui. Utilisez le port 7778 sur gw.menaproxies.com avec le même nom d’utilisateur et mot de passe. Utilisez le DNS distant (par exemple --socks5-hostname dans curl ou socks5h:// en Python) pour que le nom d’hôte soit résolu par le proxy, pas par votre machine (en Python, socks5h:// nécessite pip install "requests[socks]").
Puis-je mettre en liste blanche l’IP de mon serveur au lieu d’utiliser un mot de passe ?
Oui. Chaque plan accepte une liste blanche IP jusqu’à 10 IP, gérées dans le tableau de bord ou via l’API, et ces IP listées peuvent utiliser les proxies sans nom d’utilisateur ni mot de passe. Le ciblage et les sessions sticky sont définis dans le nom d’utilisateur, donc les configurations qui en ont besoin gardent l’authentification via nom et mot de passe.
Comment garder la même IP pour un processus de paiement ?
Ajoutez -session-<id>-ttl-<minutes> au nom d’utilisateur, par exemple USERNAME-country-ae-session-cart1-ttl-20. Chaque requête avec le même ID session utilise la même IP pour jusqu’à 30 minutes (l’IP peut changer avant). Utilisez un nouvel ID session pour chaque processus indépendant.
Où est la documentation API ?
À /docs/api/ : compte, rechargements, commandes, trafic résidentiel, ports mobiles et clés API, avec exemples curl, Python et Node.js.