【问题标题】:How to debug scrapy in pycharm, when scrapy is in a conda virtual environment当scrapy在conda虚拟环境中时,如何在pycharm中调试scrapy
【发布时间】:2019-08-30 01:08:54
【问题描述】:

当从 conda 虚拟环境运行 scrappy 时,我正在尝试使用 pycharm 调试 scrapy。

我点击了这个链接How to use PyCharm to debug Scrapy projects,它通常可以工作,但是如果我使用 conda 虚拟环境中的 scrapy,我会得到 ​​p>

导入http.client ModuleNotFoundError: 没有名为“http.client”的模块

在“常规”(venv) 环境中,它可以完美运行。

我查了一下,虚拟环境确实有http.client。来自同一文件夹的其他库(例如 hashlib.py)也被导入。

这是我正在运行的文件中的代码

from scrapy import cmdline
cmdline.execute("scrapy crawl my_spider".split())

我已经尝试将虚拟环境的路径添加到 PYTHONPATH

更新: 我添加了有关如何重现此错误的步骤:

  1. 创建一个 conda 环境 conda create -n testenv1 python=3.7

  2. 安装scrapy并创建一个项目和蜘蛛 点安装scrapy cd D:\Learn\scrapy scrapy startproject test1 光盘测试1 scrapy genspider googspid google.com

  3. 在 scrapy 项目的根目录(scrapy.cfg 所在的位置)创建一个 pycharm 项目,然后从刚刚创建的虚拟环境中选择 python.exe 作为解释器

  4. 按照上面链接中的最佳答案,你会得到这个错误 ModuleNotFoundError:没有名为“http.client”的模块

【问题讨论】:

    标签: python scrapy conda


    【解决方案1】:

    如果您正在创建一个 PyCharm 运行配置来运行 Scrapy,那么该运行配置需要使用相同的虚拟环境;您可以通过转到Project Settings > Python Interpreter 并找到(或手动添加)virtualenv 的 Python 可执行文件作为项目的 Python 解释器(或特定运行配置,如果您愿意)来做到这一点。

    【讨论】:

    • 我已经这样做了。我将添加一系列步骤来重现此错误
    猜你喜欢
    • 2018-12-29
    • 1970-01-01
    • 1970-01-01
    • 2014-01-24
    • 2013-08-28
    • 1970-01-01
    • 1970-01-01
    • 2018-06-24
    • 2018-04-06
    相关资源
    最近更新 更多