Hakuna KYC — hakuna kitambulisho, selfie wala nyaraka
Lugha: Kiswahili
Chagua 1 GB

Proxy za makazi za Afrika kwa Python

Ombi moja la udhibiti lililoidhinishwa kwa yoyote ya masoko 24 ya Afrika yaliyowekwa kwenye nyaraka, kwa taarifa za kuingia zilizowekwa kwa siri na bila mzunguko wa kujirudia wa kiotomatiki.

Iliyoruushwa mwisho: · 7 dk za kusoma

Jibu la haraka

Ninatumiaje proxy za IP za nyumbani za Afrika kwa Python?

Tumia proxy za IP za nyumbani za Afrika katika Python kwa kupitisha taarifa za kuingia zilizozalishwa kwa nchi maalum kwa Requests kwa ajili ya mwisho wa HTTPS ulioruhusiwa. Kuanzia 15 Oktoba 2026, trafiki ya data ya AfricaProxies inaanza kwa US$ 0.50/GB, bila KYC na ufadhili wa crypto. Mfano unathibitisha TLS, unaweka muda wa kuunganisha/kusoma na kusimama kwenye kukataliwa, muelekeo au makosa kabla ya jaribio lenye mipaka kuwa ukusanyaji wa kurudia.

Taarifa za usanidi wa Python

Mlangogw.africaproxies.com
Port ya HTTP(S)7777
Usaidizi wa itifakiHTTP, HTTPS (CONNECT) na SOCKS5
Msimbo wa nchi wenye kipaumbeleNG Nigeria; ZA Afrika Kusini; KE Kenya; GH Ghana; TZ Tanzania; CI Côte d’Ivoire; SN Senegal; CM Cameroon
Muda wa kuunganisha / kusoma umepita10 / 30 sekunde katika mfano huu; si mipaka ya jumla ya muda uliopita
Kiwango cha juu cha kipindiVipindi vya IP ileile huhifadhi IP hiyo kwa muda unaoweka (ttl, kwa dakika), hadi dakika 30. IP inaweza kubadilika mapema, kwa mfano kifaa cha nyumbani kikitoka mtandaoni.
KiwangoKuanzia US$ 0.50/GB
trafiki ya dataMatumizi yanahesabu data yote inayotumwa na kupokelewa kupitia proxy (kupakia na kupakua, pamoja na vichwa vya mawasiliano). 1 GB = 1,000,000,000 bytes. Majaribio ya kuunganisha yanayoshindwa kabla ya kufikia tovuti inayolengwa hayahesabiwi.

Ninawezaje kutuma ombi la kwanza kupitia proxy ya Afrika kwa Python?

  1. Andaa mwisho uliodhibitiwa

    Sakinisha Requests katika mazingira ya mradi wako. Chagua endpoint ndogo ya HTTPS unayomiliki au unaruhusiwa kuijaribu, na uzalishie jina kamili la proxy kwa ajili ya nchi ya Afrika inayohitajika.

  2. Sanidi sampuli kwa faragha

    Toa taarifa za kuingia za proxy zilizozalishwa kupitia mpangilio uliowekwa kwenye nyaraka. Weka uhakiki TLS ikiwa imewashwa, fanya kodi ya taarifa za kuingia kwa proxy URL na tumia muda maalum wa muunganisho na kusoma.

  3. Thibitisha majibu

    Endesha sampuli iliyopandwa hapa chini. Chunguza anuani inayofika kwenye logi yako ya mwisho na ukagua anuani hiyo hiyo katika vyanzo vya mahali vya uhuru; simama kwenye maudhui yasiyotegemewa, kukataliwa au mipaka ya kiwango.

Niandae nini kabla ya kuendesha mfano?

Andaa kifurushi cha proxy za IP za nyumbani kilichonunuliwa na jina kamili la mtumiaji la proxy lililotengenezwa kwa ajili ya nchi inayohitajika. Chagua HTTPS ndogo unayomiliki au unayeruhusiwa kuijaribu. Sakinisha Requests katika Python ya mradi wako kwa kutumia python -m pip install requests.

weka jaribio la awali mbali na ukusanyaji wa soko. Kwa programu ya Nigeria, Kenya, Ghana au Afrika ya Kusini unayomiliki, tumia QA ndogo ya afya au endpoint na ukague log ya seva yake ili kuthibitisha mtoano unaokuja. Mfano hautokusanya data za soko, kuweka oda au kupakia matangazo ya kulipia ya moja kwa moja.

Python: ombi moja dogo la udhibiti la HTTPS lililoruhusiwa
from getpass import getpass
from urllib.parse import quote, urlsplit
import requests

country = input("Country to test (ng, za, ke, gh, tz, ci, sn, cm, et, ug, rw, zm, zw, mz, ao, bw, na, bj, tg, bf, ml, mg, mu, cd): ").strip().lower()
if country not in {"ng", "za", "ke", "gh", "tz", "ci", "sn", "cm", "et", "ug", "rw", "zm", "zw", "mz", "ao", "bw", "na", "bj", "tg", "bf", "ml", "mg", "mu", "cd"}:
    raise SystemExit("Choose one country for this example.")

target = input("HTTPS endpoint you own or may test: ").strip()
parts = urlsplit(target)
if parts.scheme != "https" or not parts.hostname or parts.username or parts.password:
    raise SystemExit("Use an authorised HTTPS URL without embedded credentials.")

# Generate this full country-specific username in the client area.
user = getpass("Full generated proxy username: ")
password = getpass("Proxy password: ")
if f"-country-{country}" not in user:
    raise SystemExit("Generate a username for the selected country first.")

proxy = (
    f"http://{quote(user, safe='')}:{quote(password, safe='')}@"
    "gw.africaproxies.com:7777"
)
proxies = {"http": proxy, "https": proxy}

try:
    with requests.Session() as session:
        session.trust_env = False
        with session.get(
            target, proxies=proxies, timeout=(10, 30), verify=True,
            allow_redirects=False, stream=True,
        ) as response:
            if response.status_code in {403, 407, 429}:
                raise SystemExit(f"Stop and diagnose HTTP {response.status_code}; no retry.")
            if 300 <= response.status_code < 400:
                raise SystemExit("Stop: review the redirect destination before requesting it.")
            response.raise_for_status()
            received = 0
            for chunk in response.iter_content(chunk_size=8192):
                received += len(chunk)
                if received > 131072:
                    raise SystemExit("Stop: use a smaller control response.")
            print({"requested_country": country, "status": response.status_code,
                   "body_bytes_read": received})
except requests.exceptions.RequestException as error:
    # Exception messages can expose URLs: print the class, not credentials or URLs.
    raise SystemExit(f"Connection failed: {type(error).__name__}; diagnose before retrying.")

Kwa nini proxy, vyeti na muda wa kusubiri vimeainishwa wazi?

Mipangilio ya proxy ya kila ombi iliyo wazi inazuia mipangilio ya proxy ya mazingira kuchagua njia tofauti; trust_env = False pia inazuia mipangilio inayotokana na mazingira. quote(..., safe='') inasimba vipengele vya taarifa za kuingia kabla havitaingia kwenye URL ya proxy. Msimbo hauchapishi URL hiyo kamwe.

Uthibitishaji wa TLS unabaki ukiwa umewashwa. Katika mazingira yaliyodhibitiwa yanayohitaji mkusanyiko la vyeti maalum, weka mkusanyiko sahihi la kuaminika badala ya kuzima uthibitishaji. Jozi ya muda wa mwisho inazuia uanzishaji wa muunganisho na kusubiri kusoma; si muda wa mwisho wa muda wa utendaji. Machaguo haya yanafuata nyaraka za juu za Requests na marejeo ya API.

Ninawezaje kuhakikisha kwamba IP ya kutoka iko katika nchi iliyoombwa?

Tumia anwani ya chanzo iliyoonekana katika sehemu yako ya kupokea maombi ya majaribio, kisha kagua anwani hiyo hiyo kwa seti mbili za data za eneo la kijiografia zinazotoka katika vyanzo tofauti, kwa mfano IPinfo na DB-IP. Fuata kanuni za ufikiaji za kila mtoa huduma na urekodi nchi iliyorudishwa, jina la hifadhidata au huduma, na muda. Violesura viwili vinavyotumia seti ileile ya msingi ya data si ushahidi huru.

Badala yake ukiita sehemu mbili za kupokea maombi ambazo kila moja hutambua IP ya anayetuma ombi, miunganisho inayobadilika inaweza kuzipa anwani tofauti za kutoka. Linganisha anwani ileile iliyoonekana au tumia kipindi cha kubakiza anwani kilichoelezwa kwenye nyaraka. Matokeo yakitofautiana, simamisha ulinganisho unaotegemea eneo; hakuna mojawapo linalothibitisha anwani halisi ya mahali.

Jaribio la programu ya Afrika linapaswa kutumia vipindi na hitilafu vipi?

Ulinganifu wa nchi unapaswa kuhifadhi mipangilio ya soko lake na hali ya kuki kwa kila soko kwa kutenganisha. Vipindi vya maombi vinaweza kutumia tena muunganisho, kwa hivyo maombi kadhaa ya ukurasa hayamaanishi vituo tofauti kadhaa vya kutoka. Hali ya kubadilisha anwani: kila muunganisho mpya hupata IP kutoka kundini, kwa kawaida tofauti. Ili kupata IP mpya kwa kila ombi, tuma ombi moja kwa kila muunganisho (zima keep-alive). Hali thabiti huhifadhi IP moja kwa muda wa kipindi unaoweka. glossary inaeleza tofauti kati ya kipindi cha proxy na kuki za programu.

Jibu la 200 bado linahitaji kuwa na matokeo yanayotarajiwa; changamoto ya ufikiaji inaweza kutokea na hali ya mafanikio. Simama kwenye maudhui yasiyotarajiwa, kukataliwa au mipaka ya kiwango. Mfano hauna mpangilio wa kujirudia wa kiotomatiki na ukagua mielekeo kabla ya kuifuata. Wakati njia ya udhibiti inafanya kazi lakini lengo halifanyi kazi, himili tofauti hiyo katika ripoti ya msaada.

Maswali kuhusu usanidi wa Python

Je, ninaweza kutumia kipindi kimoja cha Python kwa nchi kadhaa?

Kipindi kinaweza kuhifadhi keki na kutumia tena muunganisho. Tumia matumizi tofauti yaliyoandikwa kwa Nigeria, Afrika Kusini, Kenya na Ghana ili mipangilio ya nchi na hali ya programu isichanganyike. Muunganisho uliotumika tena unaweza kubaki na tokeo lake; usitafsiri kila wito wa .get() kama mzunguko uliodhaminiwa.

Kwa nini nenosiri linatumia usimbaji wa URL?

proxy URL ina vipengele vya taarifa za kuingia. Wahusika kama @, : au / vinginevyo wanaweza kubadilisha jinsi inavyochambuliwa. Sampuli inasajili jina la mtumiaji na neno la siri na haichapui kamwe URL iliyokamilika. Ingiza siri kwenye maelekezo ya faragha badala ya kuzituma kwenye chanzo.

Kwa nini nisizime uthibitishaji wa TLS kwa jaribio lililoshindwa?

Uhakiki wa cheti unalinda muunganisho wa lengo la HTTPS. Uiache uweze kufanya kazi na uchanganue mnyororo wa cheti au kifurushi cha uaminifu kinachohitajika. Kuizima kutaficha sababu na kubadilisha usalama wa jaribio badala ya kuthibitisha kwamba njia ya Afrika imekuwa imekaa kwa usahihi.

Je, jozi ya mipaka ya muda wa kusubiri inaweka kikomo cha sekunde 40 kwa kazi nzima?

Hapana. Mfano unatoa mipaka ya kutafuta na kusoma tofauti. Inahitaji nyaraka zinazothibitisha kwamba thamani hizo si muda wa mwisho wa jumla wa saa. Jibu pia limefungwa kwenye mwili mdogo kwa ajili ya jaribio hili la udhibiti; kazi kubwa ya mradi inahitaji bajeti yake wazi na upeo ulioruhusiwa.

Je, nijaribu tena jibu la 403 au 429 kupitia IP nyingine ya kutoka?

Hapana. Sampuli inasimama ili kukataa au kikomo cha kiwango kinaweza kupitiwa. Angalia njia ya ufikiaji iliyoruhusiwa ya lengo na kazi yako iliyoruhusiwa. Nchi tofauti au IP si ruhusa ya kuendelea na ukusanyaji baada ya kukataliwa. Hifadhi jibu kwa ajili ya mapitio ya ufikiaji ya mradi.

Ninawezaje kuhakikisha kuwa ushahidi wa nchi ni huru?

Anza na anuani moja ya kutoka iliyoonekana na linganisha nchi yake katika seti mbili tofauti za data. Rekodi majina ya vyanzo na muda wa utafutaji. Kuita mianzo miwili ya kigunduzi inayozunguka inaweza kuona anuani tofauti, kwa hivyo utaratibu huo hautahakiki kutoka ileile. Simamisha jaribio la mji lililo nyeti ikiwa ushahidi hautafautiani.

Marejeo ya msingi ya usanidi yaliyokaguliwa 14 Oktoba 2026 (5)
  1. Requests advanced usage: proxies, sessions, TLS and timeouts — Requests (2026-10-14)
  2. Requests developer interface — Requests (2026-10-14)
  3. Python urllib.parse: URL component quoting — Python Software Foundation (2026-10-14)
  4. IPinfo developer resource — IPinfo (2026-10-14)
  5. DB-IP geolocation API — DB-IP (2026-10-14)

1 GB US$ 1.23 · Weka fedha kwenye akaunti kuanzia US$ 25

Chagua 1 GB