Python ଆପଣ ଆଶା କରିଥିବା ଠାରୁ ଅଲଗା socks ମଡ୍ୟୁଲ୍ ଆମଦାନୀ କଲା
ଅନୁପସ୍ଥିତ SOCKS ଗୁଣଗୁଡ଼ିକୁ proxy କିମ୍ବା DNS ବିଫଳତା ଭାବରେ ଗ୍ରହଣ କରିବା ପୂର୍ବରୁ ଆମଦାନୀ ହୋଇଥିବା ମଡ୍ୟୁଲ୍ ଯାଞ୍ଚ କରନ୍ତୁ।
module 'socks' has no attribute 'create_connection' ପରି ତ୍ରୁଟି ସଫଳ proxy ଅନୁରୋଧ ପୂର୍ବରୁ ଘଟେ। ଆପ୍ଲିକେସନ୍ ଆମଦାନୀ କରିଥିବା Python ମଡ୍ୟୁଲ୍ରୁ ଆରମ୍ଭ କରନ୍ତୁ।
import sys
import socks
print(sys.executable)
print(socks.__file__)
print(getattr(socks, '__version__', 'unknown'))ଏହି ଯାଞ୍ଚ ଧାଡ଼ିଗୁଡ଼ିକ ଇଣ୍ଟରପ୍ରିଟର ଏବଂ ଆମଦାନୀ ହୋଇଥିବା ଫାଇଲ୍ ଚିହ୍ନଟ କରେ। ବିଫଳତା ଘଟୁଥିବା ସେହି ଆପ୍ଲିକେସନ୍ ପରିବେଶରେ ସେଗୁଡ଼ିକୁ ପଢ଼ନ୍ତୁ। ଅନ୍ୟ virtual environment ବ୍ୟବହାର କରୁଥିବା ଟର୍ମିନାଲ୍ ସେହି ନାମର ଅନ୍ୟ ଫାଇଲ୍ ଆମଦାନୀ କରିପାରେ।
କୌଣସି ସ୍ଥାନୀୟ socks.py ଫାଇଲ୍ କିମ୍ବା ପ୍ୟାକେଜ୍ ଉଦ୍ଦିଷ୍ଟ ନିର୍ଭରତାକୁ ଆଚ୍ଛାଦନ କରୁଛି କି ନାହିଁ ଯାଞ୍ଚ କରନ୍ତୁ। Python ର ମଡ୍ୟୁଲ୍ ସନ୍ଧାନ ପଥ ସେହି ଫାଇଲ୍କୁ ସ୍ଥାପିତ ପ୍ୟାକେଜ୍ ଉପରେ ବିଜୟୀ କରାଇପାରେ। ଆକସ୍ମିକ ସଂଘର୍ଷକୁ ଜାଣିଶୁଣି ନାମ ବଦଳାନ୍ତୁ ଏବଂ ଏହାକୁ ପୂର୍ବରୁ ଆମଦାନୀ କରିଥିବା ପ୍ରକ୍ରିୟାକୁ ପୁନଃ ଆରମ୍ଭ କରନ୍ତୁ।
PySocks ର ଉତ୍ସରେ set_default_proxy ଏବଂ ସୁସଙ୍ଗତ ବନାନ setdefaultproxy ଉଭୟ ଅଛି, ସହିତ create_connection ମଧ୍ୟ। ତେଣୁ ଗୋଟିଏ ବନାନ ଅନ୍ଧଭାବେ ବଦଳାଇବା ଅନୁପସ୍ଥିତ ଗୁଣର ସମ୍ପୂର୍ଣ୍ଣ ନିଦାନ ନୁହେଁ।
ଆମଦାନୀ ହୋଇଥିବା ମଡ୍ୟୁଲ୍ ଏବଂ ସଂସ୍କରଣ ସଠିକ୍ ହେବା ପରେ, କୋଡ୍କୁ ସେହି ପ୍ରୋଜେକ୍ଟର ଦଲିଲଭୁକ୍ତ API ସହିତ ତୁଳନା କରନ୍ତୁ। ଆମଦାନୀ କାର୍ଯ୍ୟ କରୁଥିବା ପରି ନ ଦେଖାଯିବା ପର୍ଯ୍ୟନ୍ତ ଅସମ୍ପର୍କିତ ସିଷ୍ଟମ୍ ଲାଇବ୍ରେରୀ ଡିରେକ୍ଟୋରୀଗୁଡ଼ିକୁ ହାତରେ Python ର ସନ୍ଧାନ ପଥରେ ଯୋଡ଼ିବାରୁ ଦୂରେଇ ରୁହନ୍ତୁ। ଏହା ନିର୍ଭରତା ସଂସ୍କରଣ ମିଶାଇପାରେ ଏବଂ ମୂଳ ପରିବେଶର ଅସଙ୍ଗତିକୁ ସମାଧାନ ନକରି ଛାଡ଼ିପାରେ।