当从conda虚拟环境运行scrappy时,我正在尝试使用pycharm调试scrapy。
我点击了此链接How to use PyCharm to debug Scrapy projects,它通常可以正常工作,但是如果我在conda虚拟环境中使用scrapy,我会得到
导入http.client ModuleNotFoundError:没有名为“ http.client”的模块
在“常规”(venv)环境中,它运行完美。
我检查了一下,虚拟环境确实有http.client。另外,还会导入同一文件夹(例如hashlib.py)中的其他库。
这是我正在运行的文件中的代码
from scrapy import cmdline
cmdline.execute("scrapy crawl my_spider".split())
我已经尝试过将虚拟环境的路径添加到PYTHONPATH
更新: 我添加了有关如何重现此错误的步骤:
创建一个conda环境 康达创建-n testenv1 python = 3.7
安装scrapy并创建项目和Spider 点安装scrapy cd D:\ Learn \ scrapy scrapy startproject test1 光盘测试1 scrapy genspider googspid google.com
在scrapy项目的根目录(其中scrapy.cfg在其中)中创建pycharm项目,然后从刚刚作为解释器创建的虚拟环境中选择python.exe
按照上面链接的最佳答案,您会收到此错误 ModuleNotFoundError:没有名为“ http.client”的模块
答案 0 :(得分:0)
如果要为运行Scrapy创建PyCharm运行配置,则该运行配置需要使用相同的虚拟环境;您可以通过转到g-1
并找到(或手动添加)virtualenv的Python可执行文件作为项目(或您希望的特定运行配置)的Python解释器来执行此操作。