如何利用scrapy爬取一个网站后将网站中的链接再次爬取

我现在想通过一个网站,先爬取这个网站上的链接,然后爬取这些链接上的信息
我现在想的是用一个爬虫把网站的链接存到一个文档上,然后用另一个爬虫对文档上的链接进行读操作,然后进行爬取,有没有什么简单办法

阅读 3.6k
评论
    2 个回答

    一个爬虫类就可以解决。

    yield Request(URL,callback)返回第一次爬取的链接。

    然后用callback函数对返回链接进行再次爬取,接着再对爬取数据处理给item或者继续yield Request也行。

    callback就是回调的函数名。

    不用存文档里,那样速度太慢了。


    例子:类似于这种,有点伪代码。

    class MySpider(scrapy.Spider):
        name = 'zhilian_spider'
        allowed_domains = ['example.com']
        start_urls = [
            'http://www.zhaopin.com/citymap.html']
        yield scrapy.Request(url, callback=self.parse)
    
        def parse(self, response):
            ...
            yield scrapy.Request(url, callback=self.parse_jobs, dont_filter=True)
    
        def parse_jobs(self, response):
            ...
                yield item

    建议研究一下scrapy
    官网内容:http://scrapy-chs.readthedocs...

      相似问题
      推荐文章