module 'socks' has no attribute 'create_connection' ကဲ့သို့ အမှားသည် proxy တောင်းဆိုမှု အောင်မြင်မီ ဖြစ်ပေါ်သည်။ အပလီကေးရှင်း import လုပ်ခဲ့သော Python module မှ စတင်ပါ။

import sys
import socks

print(sys.executable)
print(socks.__file__)
print(getattr(socks, '__version__', 'unknown'))

ဤစစ်ဆေးရေးလိုင်းများသည် interpreter နှင့် import လုပ်ထားသော ဖိုင်ကို ခွဲခြားဖော်ပြသည်။ ချို့ယွင်းမှု ဖြစ်ပေါ်သည့် တူညီသော အပလီကေးရှင်း ပတ်ဝန်းကျင်တွင် ၎င်းတို့ကို ဖတ်ပါ။ အခြား virtual environment သုံးသော terminal သည် တူညီသောအမည်ရှိ အခြားဖိုင်ကို import လုပ်နိုင်သည်။

ဒေသတွင်း socks.py ဖိုင် သို့မဟုတ် package သည် ရည်ရွယ်ထားသော dependency ကို ဖုံးကွယ်နေခြင်း ရှိ၊ မရှိ စစ်ဆေးပါ။ Python ၏ module ရှာဖွေရေးလမ်းကြောင်းသည် ထိုဖိုင်ကို တပ်ဆင်ထားသော package အပေါ် အနိုင်ရစေနိုင်သည်။ မတော်တဆ ထိပ်တိုက်တွေ့မှုကို တမင်အမည်ပြောင်းပြီး ၎င်းကို import လုပ်ပြီးသော process ကို ပြန်လည်စတင်ပါ။

PySocks ၏ source တွင် set_default_proxy နှင့် လိုက်လျောညီထွေရှိသော စာလုံးပေါင်း setdefaultproxy နှစ်မျိုးလုံး ပါဝင်ပြီး create_connection လည်း ပါသည်။ ထို့ကြောင့် စာလုံးပေါင်းတစ်မျိုးကို မျက်လုံးမှိတ်ပြီး ပြောင်းလဲခြင်းသည် ပျောက်နေသော ဂုဏ်ရည်၏ ပြည့်စုံသော ရောဂါရှာဖွေမှု မဟုတ်ပါ။

import လုပ်ထားသော module နှင့် version မှန်ကန်ပြီးနောက် ကုဒ်ကို ထို project ၏ မှတ်တမ်းတင်ထားသော API နှင့် နှိုင်းယှဉ်ပါ။ import သည် အလုပ်လုပ်ပုံရသည်အထိ မသက်ဆိုင်သော system library directory များကို Python ၏ ရှာဖွေရေးလမ်းကြောင်းထဲသို့ ကိုယ်တိုင်ထည့်ခြင်းကို ရှောင်ပါ။ ၎င်းသည် dependency version များကို ရောနှောစေပြီး အခြေခံပတ်ဝန်းကျင် မကိုက်ညီမှုကို မဖြေရှင်းဘဲ ထားရစ်နိုင်သည်။

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