Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/apache/8.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
我怎样才能让scrapy接受一个满是URL的页面作为起始URL,然后对它们进行爬网呢?_Scrapy - Fatal编程技术网

我怎样才能让scrapy接受一个满是URL的页面作为起始URL,然后对它们进行爬网呢?

我怎样才能让scrapy接受一个满是URL的页面作为起始URL,然后对它们进行爬网呢?,scrapy,Scrapy,因此,我有一个网页的网址,我想爬满。 作为一个刚刚学习本教程的新手,很难看到如何扩展start\u URL以获取该页面上的所有链接。我猜有某种内置方式,但无法很好地解读文档。目前,它只是访问顶部页面,意识到不,实际上,它不是子页面之一,并引发了一些异常 class NewSpider(Spider): name = 'the_new_spider' allowed_domains = ['newspider.com'] start_urls = ['http://news

因此,我有一个网页的网址,我想爬满。 作为一个刚刚学习本教程的新手,很难看到如何扩展
start\u URL
以获取该页面上的所有链接。我猜有某种内置方式,但无法很好地解读文档。目前,它只是访问顶部页面,意识到不,实际上,它不是子页面之一,并引发了一些异常

class NewSpider(Spider):
    name = 'the_new_spider'
    allowed_domains = ['newspider.com']
    start_urls = ['http://newspider.com/page_full_of_urls'] #how to get it to extract links from this page first and crawl them?

    def parse(self, response):
        sel = Selector(response)
        t = sel.xpath("//title")
        item = NewItem()
        item['title'] = t
        return item
阅读:

在回调函数中,解析响应(网页)并返回 项对象、请求对象或两者的iterable。那些 请求还将包含回调(可能相同),然后 由Scrapy下载,然后由 指定的回调

像这样的方法应该会奏效:

class NewSpider(Spider):
    name = 'the_new_spider'
    allowed_domains = ['newspider.com']
    start_urls = ['http://newspider.com/page_full_of_urls']

    def parse(self, response):
        sel = Selector(response)
        for url in sel.xpath("//.../@href").extract():
            yield Request(url, callback=self.parse_2)

    def parse_2(self, response):
        sel = Selector(response)
        t = sel.xpath("//title")
        item = NewItem()
        item['title'] = t
        return item
阅读:

在回调函数中,解析响应(网页)并返回 项对象、请求对象或两者的iterable。那些 请求还将包含回调(可能相同),然后 由Scrapy下载,然后由 指定的回调

像这样的方法应该会奏效:

class NewSpider(Spider):
    name = 'the_new_spider'
    allowed_domains = ['newspider.com']
    start_urls = ['http://newspider.com/page_full_of_urls']

    def parse(self, response):
        sel = Selector(response)
        for url in sel.xpath("//.../@href").extract():
            yield Request(url, callback=self.parse_2)

    def parse_2(self, response):
        sel = Selector(response)
        t = sel.xpath("//title")
        item = NewItem()
        item['title'] = t
        return item
阅读:

在回调函数中,解析响应(网页)并返回 项对象、请求对象或两者的iterable。那些 请求还将包含回调(可能相同),然后 由Scrapy下载,然后由 指定的回调

像这样的方法应该会奏效:

class NewSpider(Spider):
    name = 'the_new_spider'
    allowed_domains = ['newspider.com']
    start_urls = ['http://newspider.com/page_full_of_urls']

    def parse(self, response):
        sel = Selector(response)
        for url in sel.xpath("//.../@href").extract():
            yield Request(url, callback=self.parse_2)

    def parse_2(self, response):
        sel = Selector(response)
        t = sel.xpath("//title")
        item = NewItem()
        item['title'] = t
        return item
阅读:

在回调函数中,解析响应(网页)并返回 项对象、请求对象或两者的iterable。那些 请求还将包含回调(可能相同),然后 由Scrapy下载,然后由 指定的回调

像这样的方法应该会奏效:

class NewSpider(Spider):
    name = 'the_new_spider'
    allowed_domains = ['newspider.com']
    start_urls = ['http://newspider.com/page_full_of_urls']

    def parse(self, response):
        sel = Selector(response)
        for url in sel.xpath("//.../@href").extract():
            yield Request(url, callback=self.parse_2)

    def parse_2(self, response):
        sel = Selector(response)
        t = sel.xpath("//title")
        item = NewItem()
        item['title'] = t
        return item

谢谢,这很有效,文档中的描述听起来很神秘。谢谢,这很有效,文档中的描述听起来很神秘。谢谢,这很有效,文档中的描述听起来很神秘。谢谢,这很有效,文档中的描述听起来很神秘。