问题背景

使用scrapy crawl xxx 时,发现报错如下

from cryptography.exceptions import InternalError
  File "E:\study_and_work\code\PythonProject\CrawlerProject\.venv\lib\site-packages\cryptography\exceptions.py", line 9, in <module>
    from cryptography.hazmat.bindings._rust import exceptions as rust_exceptions
ImportError: DLL load failed while importing _rust: 找不到指定的程序。

解决过程

看了一些文章后,发现问题在于我下载的cryptography的版本不对,应该下载一个低版本的cryptography。于是我随手下载了个41.0.2版本的,但是出现了一个ERROR,内容如下
ERROR
这里报错的内容是解决问题的关键,它提示我说我的cryptography的版本是错误的,我的cryptography版本应该与pyopenssl的版本相对应,最少应为41.0.5版本。而之前报错的版本为42版本的,所以这里保险起见,我下载了41.0.5版本的cryptography。

pip install cryptography==41.0.5

再使用命令scrapy crawl xxx 时,就不报错了,scrapy也正常跑了起来。

Logo

技术共进,成长同行——讯飞AI开发者社区

更多推荐