Um erro como module 'socks' has no attribute 'create_connection' ocorre antes de uma requisição de proxy bem-sucedida. Comece pelo módulo Python que a aplicação importou.

import sys
import socks

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

Estas linhas de inspeção identificam o interpretador e o arquivo importado. Leia-as no mesmo ambiente da aplicação em que a falha ocorre. Um terminal que usa outro ambiente virtual pode importar outro arquivo com o mesmo nome.

Verifique se um arquivo ou pacote socks.py local está ocultando a dependência pretendida. O caminho de busca de módulos do Python pode fazer esse arquivo vencer o pacote instalado. Renomeie deliberadamente a colisão acidental e reinicie o processo que já o importou.

O código-fonte do PySocks contém tanto set_default_proxy quanto a grafia de compatibilidade setdefaultproxy, junto com create_connection. Portanto, alterar uma única grafia às cegas não é um diagnóstico completo de um atributo ausente.

Depois que o módulo importado e a versão estiverem corretos, compare o código com a API documentada desse projeto. Evite adicionar manualmente diretórios de bibliotecas do sistema não relacionados ao caminho de busca do Python até que a importação pareça funcionar. Isso pode misturar versões de dependências e deixar a inconsistência de ambiente subjacente sem solução.

Artigos relacionados