ERROR: Could not build wheels for cryptography which use PEP 517 and cannot be installed directly

Setting cryptography to version 2.8 in requirements.txt fixed the issue.


TLDR;

Try using cryptography==3.1.1

Details:

This happened on Python 3.9.0 on Windows 10 PC. I had the following in requirements.txt

cryptography==2.8

I removed the version and kept only cryptography in requirements.txt file like below

cryptography

Saved the requirements.txt and then I ran

pip install -r requirements.txt

It installed successfully. Then I freeze the requirements.txt by running the following command

pip freeze > requirements.txt

Then the requirements.txt got updated with cryptography==3.1.1


I got this error trying to install Scrapy with Python 3.8.1 on Windows 10, but its solved installing the last version of pip (19.3.1 in my case) and all works using pip in this way:

python -m pip install scrapy --user