如何在crawlspider中调试Rule?

you*_*001 4 python scrapy

scrapy shell是调试xpath表达式的好工具,但是在scrapspider中调试Rule的工具或方法是否有效?这意味着我怎么知道该规则按我的意愿工作。

我的规则是:

rules = (
        Rule(SgmlLinkExtractor(allow=r'/search*',restrict_xpaths="//a[@id='pager_page_next']"), follow=False),
        #Rule(SgmlLinkExtractor(allow=r'/chart/[\d]+s$'), callback='parse_toplist_page', follow=True),
    )
Run Code Online (Sandbox Code Playgroud)

而且它没有遵循我想要的链接,那么如何调试?任何示例?

Ste*_*oth 5

您是否尝试过Scrapy parse命令?

scrapy parse <URL>
Run Code Online (Sandbox Code Playgroud)

<URL>您要测试的URL 在哪里。

它将返回从该URL提取的所有链接(将被跟随)。

您可以使用--noitems参数仅显示链接,并使用--spider参数显式指定蜘蛛。

scrapy parse <URL> --noitems --spider <MYSPIDER>
Run Code Online (Sandbox Code Playgroud)

有关调试蜘蛛的更多信息,请参见:http : //doc.scrapy.org/en/latest/topics/debug.html

Pablo Hoffman在用户组上提供的以下答案:https ://groups.google.com/forum/?fromgroups =#!topic/ scrapy-users/ tOdk4Xw2Z4Y