mirror of https://github.com/scrapy/scrapy.git
renamde old SchedulerStats web console module to ScheduleQueue and made it work with the new PriorityQueue
--HG-- extra : convert_revision : svn%3Ab85faa78-f9eb-468e-a121-7cced6da292c%40715
This commit is contained in:
parent
deb960526b
commit
95d99d51b9
|
|
@ -205,6 +205,17 @@ extension" is abbreviated as "WC extension".
|
|||
For more information see the see the :ref:`web console documentation
|
||||
<topics-webconsole>`.
|
||||
|
||||
Scheduler queue WC extension
|
||||
----------------------------
|
||||
|
||||
.. module:: scrapy.contrib.webconsole.scheduler
|
||||
:synopsis: Scheduler queue web console extension
|
||||
|
||||
.. class:: scrapy.contrib.webconsole.scheduler.SchedulerQueue
|
||||
|
||||
Display a list of all pending Requests in the Scheduler queue, grouped by
|
||||
domain/spider.
|
||||
|
||||
Spider live stats WC extension
|
||||
------------------------------
|
||||
|
||||
|
|
|
|||
|
|
@ -338,6 +338,7 @@ Default::
|
|||
'scrapy.xpath.extension.ResponseLibxml2',
|
||||
'scrapy.management.web.WebConsole',
|
||||
'scrapy.management.telnet.TelnetConsole',
|
||||
'scrapy.contrib.webconsole.scheduler.SchedulerQueue',
|
||||
'scrapy.contrib.webconsole.livestats.LiveStats',
|
||||
'scrapy.contrib.webconsole.spiderctl.Spiderctl',
|
||||
'scrapy.contrib.webconsole.enginestatus.EngineStatus',
|
||||
|
|
|
|||
|
|
@ -82,6 +82,7 @@ EXTENSIONS = [
|
|||
'scrapy.xpath.extension.ResponseLibxml2',
|
||||
'scrapy.management.web.WebConsole',
|
||||
'scrapy.management.telnet.TelnetConsole',
|
||||
'scrapy.contrib.webconsole.scheduler.SchedulerQueue',
|
||||
'scrapy.contrib.webconsole.livestats.LiveStats',
|
||||
'scrapy.contrib.webconsole.spiderctl.Spiderctl',
|
||||
'scrapy.contrib.webconsole.enginestatus.EngineStatus',
|
||||
|
|
|
|||
|
|
@ -1,16 +1,14 @@
|
|||
"""
|
||||
Scheduler information module for Scrapy webconsole
|
||||
Scheduler queue web console module
|
||||
|
||||
FIXME: this webconsole extension needs to be fixed after we removed
|
||||
PriorityStack/Queue from the scheduler and replace them by bisect or something
|
||||
like that.
|
||||
See documentation in docs/ref/extensions.rst
|
||||
"""
|
||||
|
||||
from pydispatch import dispatcher
|
||||
from scrapy.core.engine import scrapyengine
|
||||
from scrapy.management.web import banner, webconsole_discover_module
|
||||
|
||||
class SchedulerStats(object):
|
||||
class SchedulerQueue(object):
|
||||
webconsole_id = 'scheduler'
|
||||
webconsole_name = 'Scheduler queue'
|
||||
|
||||
|
|
@ -23,16 +21,12 @@ class SchedulerStats(object):
|
|||
def webconsole_render(self, wc_request):
|
||||
s = banner(self)
|
||||
s += "<ul>\n"
|
||||
for domain, requests in scrapyengine.scheduler.pending_requests.iteritems():
|
||||
for domain, request_queue in scrapyengine.scheduler.pending_requests.iteritems():
|
||||
s += "<li>\n"
|
||||
s += "%s (<b>%s</b> pages)\n" % (domain, len(requests))
|
||||
s += "%s (<b>%s</b> requests)\n" % (domain, len(request_queue))
|
||||
s += "<ul>\n"
|
||||
# requests is a tuple of request and deffered now, as I understand
|
||||
for r, d in requests:
|
||||
if hasattr(r, 'url'):
|
||||
s += "<li><a href='%s'>%s</a></li>\n" % (r.url, r.url)
|
||||
#else:
|
||||
# s += "<li>%s</li>\n" % (repr(r))
|
||||
for ((req, _), prio) in request_queue:
|
||||
s += "<li><a href='%s'>%s</a> (priority: %d)</li>\n" % (req.url, req.url, prio)
|
||||
s += "</ul>\n"
|
||||
s += "</li>\n"
|
||||
s += "</ul>\n"
|
||||
Loading…
Reference in New Issue