Как отладить scrapy в pycharm, когда scrapy находится в виртуальной среде conda - PullRequest
1 голос
/ 08 апреля 2019

Я пытаюсь отладить scrapy с помощью pycharm, когда scrappy запускается из виртуальной среды conda.

Я перешел по этой ссылке Как использовать PyCharm для отладки проектов Scrapy , и это нормально работает, но если я использую scrapy из виртуальной среды conda, я получаю

импорт 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 и создайте проект и паука PIP установить Scrapy CD D: \ Learn \ scrapy scrap startproject test1 cd test1 Scrap Genspider Googspid google.com

  3. Создайте проект pycharm в корне проекта scrapy (где находится scrapy.cfg) и выберите python.exe из виртуального окружения, только что созданного в качестве интерпретатора

  4. Следуйте лучшему ответу по ссылке выше, и вы получите эту ошибку ModuleNotFoundError: нет модуля с именем 'http.client'

1 Ответ

0 голосов
/ 09 апреля 2019

Если вы создаете конфигурацию запуска PyCharm для запуска Scrapy, эта конфигурация запуска должна использовать ту же виртуальную среду;Вы можете сделать это, перейдя на Project Settings > Python Interpreter и найдя (или добавив вручную) исполняемый файл virtualenv's Python в качестве интерпретатора Python для проекта (или для этой конкретной конфигурации запуска, если вы предпочитаете).

...