2010-11-03 28 views
8

Scrapy çerçevesini kullanarak yazdığım bir örümcek var. Çalışmak için herhangi bir boru hattı almakta sorun yaşıyorum. Benim pipelines.py aşağıdaki kodu vardır:Çalışmak için Scrapy pipeline'ı alamıyorum

class FilePipeline(object): 

    def __init__(self): 
     self.file = open('items.txt', 'wb') 

    def process_item(self, item, spider): 
     line = item['title'] + '\n' 
     self.file.write(line) 
     return item 

ve benim CrawlSpider alt sınıf bu sınıf için boru hattını etkinleştirmek için bu hattı vardır.

ITEM_PIPELINES = [ 
     'event.pipelines.FilePipeline' 
    ] 

Ancak ben hiçbir boru hatları ile

2010-11-03 20:24:06+0000 [scrapy] DEBUG: Enabled item pipelines: 

yazan bir satır olsun

scrapy crawl my_spider 

kullanarak çalıştırdığınızda (bu olduğunu tahmin nerede günlük gerektiği çıkış onları).

Belgelere göz atmayı denedim, ancak hiçbir şeyi kaçırıp kaçırmadığımı görmek için tüm projenin tam bir örneği yok gibi görünüyor.

Şimdi ne denemek istediğinizle ilgili öneriniz var mı? veya daha fazla belge için nereye bakmalı? Ben bir yerde kelime boru hattında bir harf farkı olduğunu bahse girerim

cevap

8

Anladım! Çizginin proje için ayar modülüne gitmesi gerekiyor. Şimdi çalışıyor!

+0

Github'da barındırılan bu proje kodunuz var mı? – Medeiros

+0

Hayır, müvekkilim bir yere koyabilirdi, ama kaynak açmak için yerim korkmuyor. –

+0

ITEM_PIPELINES ayar dosyasında bir liste yerine bir dict olarak kullanmak zorunda kaldı –

0

: PipeLine vs

Boru Hattı I 'event.pipelines.FilePipeline' eski kullanır fark

kodunuzu ikincisi kullanır oysa: do hangi senin dosya isimleri kullanımı?

(Bu yazım hatası olarak defalarca kurbanı olmuştur!)

+0

Bunu tespit ettiğiniz için teşekkürler (kaçırdığına inanamıyorum!), Ama yine de çalışmıyor maalesef –

+0

Bu hala yanlış olan şeyde bahis, kontrol etmeye devam et! : P (değilse, fikirlerin dışındayım ...) – James

+0

Başka bir bakacağım. Şerefe! –