程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 更多編程語言 >> 更多關於編程 >> Python使用Scrapy爬取妹子圖

Python使用Scrapy爬取妹子圖

編輯:更多關於編程

      前面我們給大家介紹了使用nodejs來爬取妹紙圖片的方法,下面我們來看下使用Python是如何實現的呢,有需要的小伙伴參考下吧。

      Python Scrapy爬蟲,聽說妹子圖挺火,我整站爬取了,上周一共搞了大概8000多張圖片。和大家分享一下。

      核心爬蟲代碼

      ?

    1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 # -*- coding: utf-8 -*- from scrapy.selector import Selector import scrapy from scrapy.contrib.loader import ItemLoader, Identity from fun.items import MeizituItem     class MeizituSpider(scrapy.Spider): name = "meizitu" allowed_domains = ["meizitu.com"] start_urls = ( 'http://www.meizitu.com/', )   def parse(self, response): sel = Selector(response) for link in sel.xpath('//h2/a/@href').extract(): request = scrapy.Request(link, callback=self.parse_item) yield request   pages = sel.xpath("//div[@class='navigation']/div[@id='wp_page_numbers']/ul/li/a/@href").extract() print('pages: %s' % pages) if len(pages) > 2: page_link = pages[-2] page_link = page_link.replace('/a/', '') request = scrapy.Request('http://www.meizitu.com/a/%s' % page_link, callback=self.parse) yield request   def parse_item(self, response): l = ItemLoader(item=MeizituItem(), response=response) l.add_xpath('name', '//h2/a/text()') l.add_xpath('tags', "//div[@id='maincontent']/div[@class='postmeta clearfix']/div[@class='metaRight']/p") l.add_xpath('image_urls', "//div[@id='picture']/p/img/@src", Identity())   l.add_value('url', response.url) return l.load_item()

      以上所述就是本文的全部內容了,希望大家能夠喜歡。

     

    1. 上一頁:
    2. 下一頁:
    Copyright © 程式師世界 All Rights Reserved