2013-02-04 72 views
2

我試圖按照方法here從網絡'Scrapy'的數據,同時使用Scrapy的項目管道將數據直接保存到我的Django數據庫。Scrapy項目找不到django.core.management

然而,當我嘗試運行scrapy crawl spidername,我得到的錯誤:

ImportError: No module named django.core.management

起初我還以爲是因爲我的Scrapy項目是我的Django項目文件夾之外,但即使我將整個項目移到我的Django項目文件夾中,我一直得到相同的錯誤。如果我在Scrapy項目文件夾中的新位置(在我的Django項目文件夾內)中打開python shell,import django.core.management工作正常。發生什麼了?

編輯:一些額外的信息:我在Web服務器上這樣做,我的Django項目的路徑是/home/gchorn/webapps/django_app/django_project。我使用Django版本1.4.1,Scrapy 0.16和Python2.7。 Django的+ Scrapy項目的佈局如下:

django_project/ 
    __init__.py 
    manage.py 
    settings.py 
    urls.py 
    myproject #folder containing wsgi.py 
    app1 
    app2 
    app3 
    templates 
    ScrapyProject/ 
     scrapy.cfg 
     ScrapyProject/ 
      __init__.py 
      items.py 
      pipelines.py 
      settings.py 
      spiders/ 
       __init__.py 
       my_spider.py 
+0

只需確認,你打開一個簡單的Python解釋器還是運行「python manage.py shell」? – Talvalin

+0

Talvalin,我只是打開一個簡單的2.7口譯員。 – GChorn

+0

當你打開shell時,是否使用相同版本的Python(2.7)? – SaiyanGirl

回答

0

嘗試在你的蜘蛛的settings.py設置這樣的:

import os 
import sys 

sys.path.append('/home/gchorn/webapps/django_app') 

os.environ['DJANGO_SETTINGS_MODULE'] = 'django_project.settings' 

然後你就可以導入喜歡你的模型類:

from django_project.app1.models import some_model