मैं एक साथ क्रॉल नहीं करना चाहता हूं और अवरुद्ध होना चाहता हूं। मैं प्रति सेकंड एक अनुरोध भेजना चाहता हूं।स्केपर में प्रत्येक अनुरोध के बीच देरी कैसे करें?
उत्तर
कि के लिए एक setting है:
DOWNLOAD_DELAY
डिफ़ॉल्ट:
0
समय (सेकेंड में) कि डाउनलोडर इंतजार करना चाहिए इससे पहले कि ही से लगातार पृष्ठों को डाउनलोड करने की राशि वेबसाइट। सर्वरों को बहुत कठिन मारने से बचने के लिए क्रॉलिंग गति को थ्रॉटल करने के लिए इसे का उपयोग किया जा सकता है।
DOWNLOAD_DELAY = 0.25 # 250 ms of delay
डॉक्स पढ़ें: https://doc.scrapy.org/en/latest/index.html
धन्यवाद। यह काम किया :) –
यदि आप 'DOWNLOAD_DELAY = 1' डालते हैं, तो मुझे नहीं लगता कि आप एक मिनट में 60 पेज प्राप्त कर सकते हैं। यह डाउनलोडिंग गति और सभी प्रकार के ओवरहेड द्वारा भी रोका जाता है। मैं कहूंगा कि यह आपको केवल एक स्क्रैपिंग ऊपरी सीमा प्रदान करता है ताकि आप लक्ष्य साइटों को बहुत अधिक प्रभावित न करें। –
तुम भी 'download_delay' मकड़ी पर विशेषता यदि आप एक वैश्विक डाउनलोड देरी नहीं करना चाहते हैं निर्धारित कर सकते हैं। देखें http://doc.scrapy.org/en/latest/faq.html#what-does-the-response-status-code-999-means
class S(Spider):
rate = 1
def __init__(self):
self.download_delay = 1/float(self.rate)
दर सेट पृष्ठों की एक अधिकतम राशि एक सेकंड में डाउनलोड किया जा सकता है।
क्या आप कृपया वर्णन कर सकते हैं या यह क्या करता है इसकी कुछ व्याख्या। जैसा कि यह खड़ा है मुझे इस जवाब को हटाने के लिए वोट देना होगा। – Numeron
विलंब हम 2 में सेट कर सकते हैं कहते हैं: -
हम देरी क्रॉलर चलाते समय निर्दिष्ट कर सकते हैं। ईजी। scrapy क्रॉल नमूना --set DOWNLOAD_DELAY = 3
(जो दो अनुरोधों के बीच 3 सेकंड देरी का मतलब है) या फिर हम globaly settings.py में DOWNLOAD_DELAY = 3
डिफ़ॉल्ट scrapy द्वारा निर्दिष्ट कर सकते हैं लेता के बीच 0.25 सेकंड देरी 2 अनुरोध
यदि आप एक सेकंड की डाउनलोड देरी रखना चाहते हैं, तो DOWNLOAD_DELAY=1
सेटिंग करना इसका तरीका है।
लेकिन स्कैरेपी में AutoThrottle
नामक डाउनलोड विलंब स्वचालित रूप से सेट करने की सुविधा भी है। यह स्वचालित रूप से दोनों स्क्रैप सर्वर और जिस वेबसाइट पर आप क्रॉल कर रहे हैं, के भार के आधार पर देरी सेट करता है। यह मनमाने ढंग से देरी सेट करने से बेहतर काम करता है।
पढ़ें इस बारे में आगे http://doc.scrapy.org/en/1.0/topics/autothrottle.html#autothrottle-extension
पर मैं 100 से अधिक डोमेन द्वारा क्रॉल किए गए और AutoThrottle साथ अवरुद्ध नहीं किया गया
DOWNLOAD_DELAY बगल में चालू है, तो आप भी scrapy की AUTOTHROTTLE सुविधा का उपयोग कर सकते हैं, https://doc.scrapy.org/en/latest/topics/autothrottle.html
यह सेटिंग्स फ़ाइल के आधार पर अनुरोधों के बीच देरी राशि बदलता है। यदि आप प्रारंभ और अधिकतम देरी दोनों के लिए 1 सेट करते हैं, तो यह प्रत्येक अनुरोध में 1 सेकंड का इंतजार करेगा।
इसका मूल उद्देश्य देरी का समय बदलना है ताकि आपके बॉट का पता लगाना कठिन हो।
AUTOTHROTTLE_ENABLED = True
AUTOTHROTTLE_START_DELAY = 1
AUTOTHROTTLE_MAX_DELAY = 3
- 1. jQuery.each फ़ंक्शन के प्रत्येक लूप के बीच देरी कैसे करें?
- 2. स्केपर
- 3. डिफ़ॉल्ट.png में देरी कैसे करें?
- 4. CABasicAnimation में देरी कैसे करें?
- 5. स्केपर विफलता यूआरएल कैसे प्राप्त करें?
- 6. Jquery UIBlock प्लगइन में देरी कैसे करें?
- 7. स्केपर
- 8. स्केपर
- 9. देरी पोस्टबैक कैसे करें?
- 10. स्केपर + ग्रहण PyDev: डीबगर कैसे सेटअप करें?
- 11. स्केपर में गतिशील start_urls
- 12. प्रत्येक एसओएपी अनुरोध
- 13. वसंत बीन्स स्टार्टअप में देरी कैसे करें?
- 14. टोमकैट प्रत्येक अनुरोध
- 15. jquery एनीमेशन में देरी कैसे करें?
- 16. QML के भीतर जावास्क्रिप्ट कार्रवाई में देरी कैसे करें?
- 17. मैं स्केपर
- 18. स्केपर में नेस्टेड आइटम को कैसे कार्यान्वित करें?
- 19. फ़ंक्शन के बीच में विराम कैसे करें (देरी वापसी) और ईवेंट
- 20. एकाधिक सेवाओं (एकाधिक थ्रेड के साथ प्रत्येक सेवा) के बीच एक लॉगफाइल साझा करें, कैसे करें?
- 21. PHP/POST/PUT/अनुरोध अनुरोध कैसे करें और PHP में अनुरोध प्रकार का अनुरोध कैसे करें?
- 22. स्केपर start_urls
- 23. स्केपर HtmlXPathSelector
- 24. आईआईएस async के साथ प्रत्येक प्रतिक्रिया के बीच एक बहुत अनुरोध करता
- 25. रेल 3.2 में प्रत्येक अनुरोध के लिए मणि को फिर से लोड कैसे करें?
- 26. Jquery देरी के बाद
- 27. कॉल करें jQuery अजाक्स अनुरोध प्रत्येक एक्स मिनट
- 28. एकाधिक स्टार्टअप परियोजनाओं के बीच विजुअल स्टूडियो देरी?
- 29. मानचित्र, प्रत्येक के बीच क्या अंतर है, और एकत्रित करें?
- 30. स्केपर ढांचे के साथ टोर का उपयोग
[यहाँ] (http: // stackoverflow
तुम बस के रूप में निम्नानुसार settings.py में यह सेट करना होगा।कॉम/प्रश्न/30404364/स्केपर-देरी-अनुरोध) आपके पास एक स्पष्ट समाधान है। – hereje