mirror of https://github.com/scrapy/scrapy.git
- --default-spider option gives the default spider (old --spider option)
- --spider option now forces to use the given spider domain when arguments are urls --HG-- extra : convert_revision : svn%3Ab85faa78-f9eb-468e-a121-7cced6da292c%4076
This commit is contained in:
parent
abde0e5f51
commit
d765b133f0
|
|
@ -39,7 +39,8 @@ class ScrapyCommand(object):
|
|||
"""
|
||||
parser.add_option("-f", "--logfile", dest="logfile", help="logfile to use. if omitted stderr will be used", metavar="FILE")
|
||||
parser.add_option("-o", "--loglevel", dest="loglevel", default=None, help="log level")
|
||||
parser.add_option("--spider", dest="spider", default=None, help="default spider (domain) to use if no spider is found")
|
||||
parser.add_option("--default-spider", dest="default_spider", default=None, help="default spider (domain) to use if no spider is found")
|
||||
parser.add_option("--spider", dest="spider", default=None, help="Force to use the given spider")
|
||||
parser.add_option("--nolog", dest="nolog", action="store_true", help="disable all log messages")
|
||||
parser.add_option("--profile", dest="profile", default=None, help="write profiling stats in FILE, to analyze later with: python -m pstats FILE", metavar="FILE")
|
||||
parser.add_option("--pidfile", dest="pidfile", help="Write process pid to file FILE", metavar="FILE")
|
||||
|
|
@ -56,9 +57,13 @@ class ScrapyCommand(object):
|
|||
if opts.nolog:
|
||||
settings.overrides['LOG_ENABLED'] = False
|
||||
|
||||
if opts.spider:
|
||||
if opts.default_spider:
|
||||
from scrapy.spider import spiders
|
||||
spiders.default_domain = opts.spider
|
||||
|
||||
if opts.spider:
|
||||
from scrapy.spider import spiders
|
||||
spiders.force_domain = opts.spider
|
||||
|
||||
if opts.pidfile:
|
||||
pid = os.getpid()
|
||||
|
|
|
|||
|
|
@ -20,6 +20,7 @@ class SpiderManager(object):
|
|||
self.loaded = False
|
||||
self.default_domain = None
|
||||
self.spider_modules = settings.getlist('SPIDER_MODULES')
|
||||
self.force_domain = None
|
||||
|
||||
@property
|
||||
def all(self):
|
||||
|
|
@ -36,6 +37,8 @@ class SpiderManager(object):
|
|||
|
||||
def fromurl(self, url, include_disabled=True):
|
||||
self._load_on_demand()
|
||||
if self.force_domain:
|
||||
return self._alldict.get(self.force_domain)
|
||||
domain = urlparse.urlparse(url).hostname
|
||||
domain = str(domain).replace('www.', '')
|
||||
if domain:
|
||||
|
|
|
|||
Loading…
Reference in New Issue