मैं एक सॉकर साइट स्क्रैप कर रहा हूं और स्पाइडर (एक स्पाइडर) साइट के पृष्ठों से कई प्रकार के आइटम प्राप्त करता है: टीम, मैच, क्लब इत्यादि। मैं कोशिश कर रहा हूं CSVItemExporter का उपयोग अलग-अलग सीएसवी फाइलों, teams.csv, match.csv, club.csv इत्यादि में स्टोर करने के लिए करें।प्रति आइटम सीएसवी फाइलों को अलग करने के लिए स्केपर निर्यात आइटम कैसे कर सकते हैं
मुझे यकीन नहीं है कि ऐसा करने का सही तरीका क्या है। एकमात्र तरीका मैंने सोचा है कि उदाहरण के लिए http://doc.scrapy.org/en/0.14/topics/exporters.html में अपनी खुद की कस्टम पाइपलाइन बनाना है और स्पाइडर_ओपेन विधि में सभी आवश्यक सीएसवी फाइलें खोलें, यानी प्रत्येक सीएसवी फ़ाइल के लिए एक सीएसवी निर्यातक बनाएं और process_item कोड को कोड में रखें यह पता लगाएं कि किस प्रकार का आइटम "आइटम" पैरामीटर है और फिर उसे संबंधित निर्यातक ऑब्जेक्ट पर भेज दें।
वैसे भी मुझे स्क्रैप में एकाधिक सीएसवी फाइलों (प्रति आइटम प्रकार) को संभालने का कोई उदाहरण नहीं मिला है, इसलिए मुझे चिंता है कि मैं इसका उपयोग इस तरह से कर रहा हूं जिसका उपयोग नहीं किया जा रहा है। (यह स्केरेपी के साथ मेरा पहला अनुभव है)।
diomedes
ठीक है, MultiCSVItemPipeline लिखने के बाद मैं बेहतर महसूस करता हूं :-)। मैं जांचता हूं कि आपने वस्तु वर्ग को यह पता लगाने के लिए सुझाव दिया कि आइटम कहां जाता है। मैं किसी भी प्रश्न के लिए कोड दिखाने के लिए स्वयं का जवाब दे रहा हूं। – Diomedes