Recursion 最大深度无限循环的刮擦式递归爬行

Recursion 最大深度无限循环的刮擦式递归爬行,recursion,scrapy,depth,Recursion,Scrapy,Depth,我是scrapy的新手,我正在尝试制作一只蜘蛛,它必须做这种工作: 以递归方式提取通用网页中具有特定深度的所有链接 我正在尝试使用以下代码执行此操作: class MySpider(CrawlSpider): settings.overrides['DEPTH_LIMIT'] = 1 name = "cnet" allowed_domains = ["cnet.com"] start_urls = ["http://www.cnet.com/"] rul

我是scrapy的新手,我正在尝试制作一只蜘蛛,它必须做这种工作:

以递归方式提取通用网页中具有特定深度的所有链接

我正在尝试使用以下代码执行此操作:

class MySpider(CrawlSpider):
    settings.overrides['DEPTH_LIMIT'] = 1
    name = "cnet"
    allowed_domains = ["cnet.com"]
    start_urls = ["http://www.cnet.com/"]

    rules = (Rule (SgmlLinkExtractor(allow_domains=('cnet.com',)), callback="parse_items", follow= True),)

    def parse_items(self, response):
        print ""
        print "PARSE ITEMS"
        print ""

        hxs = HtmlXPathSelector(response)
        titles = hxs.select('//a')
        items = []
        for titles in titles:
            item = NewsItem()
            item ["title"] = titles.select("text()").extract()
            item ["link"] = titles.select("@href").extract()

            if(len(item["link"]) > 0) and (self.allowed_domains[0] in item["link"][0]):
                print ""
                print response.meta['depth']
                print item ["title"]
                print item ["link"]
                print ""

            items.append(item)
        return(items)
但它似乎在无限循环,有什么建议吗?


非常感谢

关于无限循环,你能说得更具体些吗?你是说在同一个网址上?在域上?在同一域上:(