Return a :class:`~scrapy.Request` object from the memory queue, falling back to the disk queue if the memory queue is empty. Return ``None`` if there are no more enqueued requests. Increment the appropriate stats, such as: ``scheduler/dequeued``, ``scheduler
(self)
| 385 | return True |
| 386 | |
| 387 | def next_request(self) -> Request | None: |
| 388 | """ |
| 389 | Return a :class:`~scrapy.Request` object from the memory queue, |
| 390 | falling back to the disk queue if the memory queue is empty. |
| 391 | Return ``None`` if there are no more enqueued requests. |
| 392 | |
| 393 | Increment the appropriate stats, such as: ``scheduler/dequeued``, |
| 394 | ``scheduler/dequeued/disk``, ``scheduler/dequeued/memory``. |
| 395 | """ |
| 396 | request: Request | None = self.mqs.pop() |
| 397 | assert self.stats is not None |
| 398 | if request is not None: |
| 399 | self.stats.inc_value("scheduler/dequeued/memory") |
| 400 | else: |
| 401 | request = self._dqpop() |
| 402 | if request is not None: |
| 403 | self.stats.inc_value("scheduler/dequeued/disk") |
| 404 | if request is not None: |
| 405 | self.stats.inc_value("scheduler/dequeued") |
| 406 | return request |
| 407 | |
| 408 | def __len__(self) -> int: |
| 409 | """ |
no test coverage detected