मैं एक ही मकड़ी के कई उदाहरण शुरू करते समय अटक गया हूं। मैं इसे 1 मकड़ी उदाहरण के लिए 1 यूआरएल की तरह चलाने के लिए चाहता हूँ। मुझे 50k यूआरएल को संसाधित करना है और इसके लिए मुझे प्रत्येक के लिए अलग-अलग उदाहरण शुरू करने की आवश्यकता है। मेरी मुख्य स्पाइडर स्क्रिप्ट में, मैंने यह सुनिश्चित करने के लिए कि मैं लंबे समय तक क्रॉल नहीं कर रहा हूं, मैंने 7 मिनट के लिए बंदपाइडर टाइमट सेट किया है।स्क्रैप - एक ही मकड़ी प्रक्रिया के कई उदाहरण कैसे शुरू करें?
from scrapy.crawler import CrawlerProcess
from scrapy.utils.project import get_project_settings
import urlparse
for start_url in all_urls:
domain = urlparse.urlparse(start_url).netloc
if domain.startswith('ww'):
domain = domain.split(".",1)[1]
process = CrawlerProcess(get_project_settings())
process.crawl('textextractor', start_url=start_url,allowed_domains=domain)
process.start()
यह 1 यूआरएल के लिए पूरी तरह से चलाता है, बर उसके बाद जब 2 यूआरएल पारित हो जाता है यह त्रुटि नीचे देता है:: कृपया नीचे दिए गए कोड को देखने के
raise error.ReactorNotRestartable()
ReactorNotRestartable
कृपया सुझाव है कि क्या मैं इसे बनाने के लिए क्या करना चाहिए एक ही मकड़ी के कई उदाहरणों के लिए चलाएं। इसके अलावा, मैं धागे का उपयोग कर एक समय में स्केपर के कई उदाहरण शुरू करने के बारे में सोच रहा हूं। क्या यह एक अच्छा दृष्टिकोण होगा?
इस मामले पर किसी भी अद्यतन के बारे में? – UriCS