SOCKS မှီခိုပက်ကေ့ချ်မရှိခြင်းသည် စက်တွင်း Python တပ်ဆင်မှု ပြဿနာဖြစ်သည်။ Requests နှင့် HTTPX သည် မတူသော ရွေးချယ်ပက်ကေ့ချ်သုံးသဖြင့် script import လုပ်သည့် client ၏ extra ကိုတပ်ဆင်ပါ။

Requests

uv add 'requests[socks]'
uv run python -c 'import requests, socks; print(requests.__version__)'

Requests က PySocks သုံးသည်။ ထိုမှီခိုမှုတပ်ဆင်ပြီးလျှင် socks5h:// ပရောက်စီ URL သည် ပစ်မှတ် DNS ကို SOCKS ပရောက်စီအားလွှဲပေးသည်။ endpoint ကိုယ်တိုင် SOCKS ဝန်ဆောင်မှုပေးရမည်။

HTTPX

uv add 'httpx[socks]'
uv run python -c 'import httpx, socksio; print(httpx.__version__)'

HTTPX က socksio သုံးသည်။ requests[socks] တပ်ဆင်ခြင်းက HTTPX extra မပေးပါ။

တပ်ဆင်ပြီးသားလား

terminal၊ IDE၊ notebook kernel နှင့် အချိန်ဇယားအလုပ်သည် Python ပတ်ဝန်းကျင်မတူနိုင်ပါ။ မအောင်မြင်သော script ကိုမောင်းသည့် interpreter ကိုစစ်ပါ။

uv run python -c 'import sys; print(sys.executable)'

import စစ်ဆေးမှုကို အလားတူပတ်ဝန်းကျင်တွင်လုပ်ပါ။ အောင်မြင်လျှင် ကန့်သတ် timeout နှင့် request ပြန်စမ်းပါ။ နောက်ပိုင်း အထောက်အထား၊ ချိတ်ဆက်မှု သို့မဟုတ် SOCKS reply အမှားတို့သည် ချိတ်ဆက်မှုကိုယ်တိုင်၏ ပြဿနာဖြစ်သည်။ နောက်စမ်းသပ်မှုအတွက် အများသုံး endpoint လိုလျှင် SOCKS5 ပရောက်စီစာရင်းကိုကြည့်ပြီး client ကိုကိုက်ညီသော SOCKS mode တွင်ထားပါ။

ဆက်စပ်ဆောင်းပါးများ