Если посмотреть на документацию по scrapy для download_delay и Concurrent_requests, я понимаю: если у меня есть «CONCURRENT_REQUESTS»: 25 и download_delay из 1 секунды, это означает, что после того, как scrapy запросит 25 страниц, scrapy будет ждать все 25 для загрузки, затем подождите 1 секунду и снова запросите 25 страниц. Если я использую download_delay из 0 секунд, то scrapy делает то же самое, что и выше, без 1-секундной задержки. Но когда я использовал эти настройки в своем скрепе, это не работает так, как ожидалось, так как, когда я нахожусь в 0 секунд, мое сетевое использование составляет 2,1 Мбит/с в среднем, когда я использую задержку в 0 секунд по сравнению с задержкой в 1 секунду, когда мое использование сети просто 0,3 Мбит/с в среднем (максимум 0,4 Мбит/с). Вот мой код:Scrapy's Download_Delay и параллельные запросы не работают должным образом
class DetailsxxxSpider(scrapy.Spider):
name = "details"
allowed_domains = ["www.xxx.com"]
download_delay = 1
custom_settings = {'CONCURRENT_REQUESTS': 25}
def start_requests(self):
engine = create_engine('sqlite:///temp.db')
Base.metadata.bind = engine
DBSession = sessionmaker(bind=engine)
session = DBSession()
urls = session.query(Temp.url).filter_by(status = "Insert").all()
# print urls
for url in urls:
yield Request(url[0])
скорость сканирования 1800 страниц/минуты в среднем при использовании 0 секундной задержки, а при использовании 1-секундной задержки составляет 43 страниц/минуты, хотя страницы/мин скорости в идеале должна быть 900 страниц/минута , Кажется, что download_delay настраивается на запрос при использовании 1-секундной задержки.
Я использую прокси для каждого запроса, который я делаю. Что мне не хватает? Есть ли способ, которым я могу установить Delay после 25 запросов на 1 секунду. Я в идеале хочу скорость 900 страниц в минуту. Любая помощь будет оценена.
Благодаря
Есть ли способ установить задержку загрузки после 25 запросов на 1 секунду, а не устанавливать задержку между каждым последующим запросом? –
Не похоже, что это можно сделать с помощью лоскутных настроек –