美文网首页
爬取干货集中营数据(2)

爬取干货集中营数据(2)

作者: 甚了 | 来源:发表于2016-01-14 23:26 被阅读81次

    爬取干货集中营数据(2)

    http://gank.io/

    得到更多妹纸图 ಠ౪ಠ

    1. 还记得上一次抓住的妹子吗。爬取干货集中营数据(1)——抓住妹子
      延用上次的工程代码,我们继续抓妹子。

    2. 定义Item(ganl/items.py):

       class GankMeizi(scrapy.Item):
           title = scrapy.Field()
           image = scrapy.Field()
           refs = scrapy.Field()
      
      • title : 每页标题
      • image : 每页妹子
      • refs : 每页中的超链接,链向下一篇 或者 上一篇
    3. 继续修改gankMeiZi.py

        # -*- coding: utf-8 -*-
        __author__ = 'dongsj'
    
        import scrapy
    
        from scrapy.spider import Spider
        from scrapy.selector import Selector
    
        from gank.items import GankMeizi
    
        class GankMeiZiSpider(Spider):
            name = 'gankMeiZi'
            allowed_domains = ["gank.io"]
            start_urls = [
                "http://gank.io"
            ]
    
            def parse(self, response):
                """
                    用来爬取http://gank.io 妹子图片
                """
                base_url = 'http://gank.io'
                sel = Selector(response)
                # 页面标题
                title = sel.xpath("//div[@class='typo']/div/h1/text()").extract()
                # 图片
                image = sel.xpath("//div[@class='outlink']/h1/img/@src").extract()
                # 前一页面地址
                refs = sel.xpath("//div[@class='typo']/div[@class='container content']/div[@class='row'][1]/div[@class='six columns']/p/a/@href").extract()
    
                # Item 对象
                meizi = GankMeizi()
                meizi['title'] = title[0]
                meizi['image'] = image[0]
                meizi['refs'] = refs
    
                yield meizi
    
                if 0 < len(refs):
                    url = base_url + refs[0]
                    yield scrapy.Request(url, callback=self.parse)
    
    • 这里还是使用 xpath 解析了页面上的超链接(指向上一篇 或者 下一篇文章)
    • 得到超链接后,根据网站特点拼接成新的链接,继续爬取一次妹子

    当然这里还是有很多问题:

    • 会出现重复的妹子,我们需要加入判断的机制,使得妹子不会被重复的爬取
    • 爬取的内容只是打印在控制台,我们需要另外的存储方式
    • ... ...

    相关文章

      网友评论

          本文标题:爬取干货集中营数据(2)

          本文链接:https://www.haomeiwen.com/subject/mplhkttx.html