ຂໍ້ຜິດພາດເຊັ່ນ module 'socks' has no attribute 'create_connection' ເກີດຂຶ້ນກ່ອນຄຳຮ້ອງ proxy ຈະສຳເລັດ. ເລີ່ມຈາກໂມດູນ Python ທີ່ແອັບພລິເຄຊັນນຳເຂົ້າ.

import sys
import socks

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

ແຖວກວດສອບເຫຼົ່ານີ້ລະບຸຕົວແປພາສາ ແລະ ໄຟລ໌ທີ່ນຳເຂົ້າ. ອ່ານພວກມັນໃນສະພາບແວດລ້ອມແອັບພລິເຄຊັນດຽວກັນທີ່ເກີດຄວາມຜິດພາດ. ເທີມິນອລທີ່ໃຊ້ສະພາບແວດລ້ອມສະເໝືອນອື່ນອາດນຳເຂົ້າໄຟລ໌ອື່ນທີ່ຊື່ດຽວກັນ.

ກວດເບິ່ງວ່າໄຟລ໌ ຫຼື ແພັກເກດ socks.py ໃນເຄື່ອງບັງຕົວການຂຶ້ນກັບທີ່ຕັ້ງໃຈໄວ້ຫຼືບໍ່. ເສັ້ນທາງຄົ້ນຫາໂມດູນຂອງ Python ສາມາດເຮັດໃຫ້ໄຟລ໌ນັ້ນຊະນະແພັກເກດທີ່ຕິດຕັ້ງໄວ້. ປ່ຽນຊື່ການຊົນກັນໂດຍບັງເອີນຢ່າງເຈດຕະນາ ແລ້ວເລີ່ມຂະບວນການທີ່ນຳເຂົ້າມັນແລ້ວໃໝ່.

ແຫຼ່ງຂອງ PySocks ມີທັງ set_default_proxy ແລະ ການສະກົດທີ່ເຂົ້າກັນໄດ້ setdefaultproxy ພ້ອມກັບ create_connection. ດັ່ງນັ້ນການປ່ຽນການສະກົດພຽງອັນດຽວຢ່າງບໍ່ຄິດ ບໍ່ແມ່ນການວິນິດໄສທີ່ສົມບູນຂອງຄຸນສົມບັດທີ່ຂາດຫາຍ.

ເມື່ອໂມດູນທີ່ນຳເຂົ້າ ແລະ ເວີຊັນຖືກຕ້ອງແລ້ວ, ປຽບທຽບໂຄ້ດກັບ API ທີ່ມີເອກະສານຂອງໂຄງການນັ້ນ. ຫຼີກລ້ຽງການເພີ່ມໂຟນເດີຫ້ອງສະໝຸດລະບົບທີ່ບໍ່ກ່ຽວຂ້ອງດ້ວຍມືໃສ່ເສັ້ນທາງຄົ້ນຫາຂອງ Python ຈົນກວ່າການນຳເຂົ້າຈະເບິ່ງຄືເຮັດວຽກ. ສິ່ງນັ້ນອາດປະສົມເວີຊັນຂອງການຂຶ້ນກັບ ແລະ ປະໃຫ້ຄວາມບໍ່ສອດຄ່ອງຂອງສະພາບແວດລ້ອມພື້ນຖານບໍ່ໄດ້ຮັບການແກ້ໄຂ.

ບົດຄວາມທີ່ກ່ຽວຂ້ອງ