'No module named bcrypt : DLL load failed

I am trying to install pysftp on windows as my odoo server is on windows and I used pysftp in my module.

First of all, it gives me an error No module named pysftp. I installed it using pip install pysftp then system gives me same error for different dependencies like paramiko,payn1,cryptography etc. But at last, it gives me an error No module named bcrypt so I tried to install it using pip and it installed successfully. But when I run application it's giving me following error.

Traceback (most recent call last):
 File "werkzeug\serving.py", line 177, in run_wsgi

  File "werkzeug\serving.py", line 165, in execute

  File "D:\Program Files (x86)\Odoo 10.0e\server\odoo\service\server.py", line 246, in app
return self.app(e, s)
  File "D:\Program Files (x86)\Odoo 10.0e\server\odoo\service\wsgi_server.py", line 186, in application
return application_unproxied(environ, start_response)
  File "D:\Program Files (x86)\Odoo 10.0e\server\odoo\service\wsgi_server.py", line 172, in application_unproxied
result = handler(environ, start_response)
File "D:\Program Files (x86)\Odoo 10.0e\server\odoo\http.py", line 1307, in __call__
self.load_addons()
 File "D:\Program Files (x86)\Odoo 10.0e\server\odoo\http.py", line 1328, in load_addons
m = __import__('odoo.addons.' + module)
File "D:\Program Files (x86)\Odoo 10.0e\server\odoo\modules\module.py", line 81, in load_module
execfile(modfile, new_mod.__dict__)
File "D:\Program Files (x86)\Odoo 10.0e\server\odoo\addons\amgl\__init__.py", line 4, in <module>
from . import models
File "D:\Program Files (x86)\Odoo 10.0e\server\odoo\addons\amgl\models\__init__.py", line 3, in <module>
from . import customer
File "D:\Program Files (x86)\Odoo 10.0e\server\odoo\addons\amgl\models\customer.py", line 8, in <module>
import pysftp
File "D:\Program Files (x86)\Odoo 10.0e\server\pysftp\__init__.py", line 12, in <module>
import paramiko
File "D:\Program Files (x86)\Odoo 10.0e\server\paramiko\__init__.py", line 22, in <module>
from paramiko.transport import SecurityOptions, Transport
File "D:\Program Files (x86)\Odoo 10.0e\server\paramiko\transport.py", line 57, in <module>
from paramiko.ed25519key import Ed25519Key
File "D:\Program Files (x86)\Odoo 10.0e\server\paramiko\ed25519key.py", line 17, in <module>
import bcrypt
File "D:\Program Files (x86)\Odoo 10.0e\server\bcrypt\__init__.py", line 25, in <module>
from bcrypt import _bcrypt
 ImportError: DLL load failed: The specified module could not be found.

My pip version is 9.0.1 and python version is 3.5.4



Solution 1:[1]

It seems that you have not used proper python version with odoo10 and gets package errors. Check the documentation of odoo10 for correct python version. Use python 2.7.9 for windows to run odoo 10 as mentioned in documentation.

For installing python 2.7.9 packages, use pip command. For installing python3 packages, use pip3 command.

One more thing for the pysftp package. You may get these errors because of the pysftp package is not supported on python 3.5 version. Check pysftp documentation for supported python versions.

I hope this will help you!

Solution 2:[2]

Just use this commond in your python/venv: pip install bcrypt

Sources

This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.

Source: Stack Overflow

Solution Source
Solution 1
Solution 2 AlexisG