Грешка попут 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-а док се увоз не почне чинити исправним. То може помешати верзије зависности и оставити основну неусклађеност окружења нерешено.

Повезани чланци