A(z) module 'socks' has no attribute 'create_connection' jellegű hiba sikeres proxy-kérés előtt jelentkezik. Kezdje azzal a Python-modullal, amelyet az alkalmazás importált.

import sys
import socks

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

Ezek az ellenőrző sorok azonosítják az értelmezőt és az importált fájlt. Ugyanabban az alkalmazáskörnyezetben olvassa őket, ahol a hiba fellép. Egy másik virtuális környezetet használó terminál más, azonos nevű fájlt importálhat.

Ellenőrizze, hogy egy helyi socks.py fájl vagy csomag nem árnyékolja-e a szánt függőséget. A Python modulkeresési útvonala miatt ez a fájl felülkerekedhet a telepített csomagon. Nevezze át szándékosan a véletlen ütközést, és indítsa újra azt a folyamatot, amely már importálta.

A PySocks forrása egyszerre tartalmazza a(z) set_default_proxy és a kompatibilis setdefaultproxy írásmódot, valamint a(z) create_connection elemet. Ezért egyetlen írásmód vakon történő módosítása nem teljes diagnózisa egy hiányzó attribútumnak.

Miután az importált modul és a verzió megfelelő, hasonlítsa össze a kódot a projekt dokumentált API-jával. Kerülje a nem kapcsolódó rendszerkönyvtár-mappák kézi hozzáadását a Python keresési útvonalához, amíg az import működni nem látszik. Ez összekeverheti a függőségek verzióit, és megoldatlanul hagyhatja a mögöttes környezeti eltérést.

Kapcsolódó cikkek