diff --git a/scrapy/trunk/scrapy/command/commands/parse.py b/scrapy/trunk/scrapy/command/commands/parse.py index 7ddb1ad5b..a8a091a42 100644 --- a/scrapy/trunk/scrapy/command/commands/parse.py +++ b/scrapy/trunk/scrapy/command/commands/parse.py @@ -83,12 +83,12 @@ class Command(ScrapyCommand): else: if hasattr(spider, 'rules'): for rule in spider.rules: + extracted_links = rule.link_extractor.extract_urls(response) + for link in extracted_links: + links.add(Request(url=link.url, link_text=link.text)) + if rule.link_extractor.matches(response.url): ret_items, ret_links = self.run_method(spider, response, rule.callback, args, opts) - extracted_links = rule.link_extractor.extract_urls(response) - for link in extracted_links: - links.add(Request(url=link.url, link_text=link.text)) - items = items.union(ret_items) links = links.union(ret_links) else: