scrapy 图片数据的爬取

  • 基于scrapy进行图片数据的爬取:

    • 在爬虫文件中只需要解析提取出图片地址,然后将地址提交给管道
    • 配置文件中写入文件存储位置:IMAGES_STORE = './imgsLib'
    • 在管道文件中进行管道类的制定:
      • 1.from scrapy.pipelines.images import ImagesPipeline
      • 2.将管道类的父类修改成ImagesPipeline
      • 3.重写父类的三个方法
  • 校花网爬取示例

    • spider.py文件

      import scrapy
      from imgspider.items import ImgspiderItem class ImgSpiderSpider(scrapy.Spider):
      name = 'img_spider'
      # allowed_domains = ['www.xxx.com']
      start_urls = ['http://www.521609.com/daxuemeinv/']
      url = 'http://www.521609.com/daxuemeinv/list8%d.html'
      pageNum = 1 def parse(self, response):
      li_list = response.xpath('//*[@id="content"]/div[2]/div[2]/ul/li')
      # 拼接图片url
      for li in li_list:
      print(self.pageNum)
      img_src = 'http://www.521609.com' + li.xpath('./a[1]/img/@src').extract_first()
      item = ImgspiderItem()
      item['src'] = img_src
      yield item if self.pageNum < 3:
      self.pageNum += 1
      new_url = format(self.url % self.pageNum)
      yield scrapy.Request(new_url, callback=self.parse)
    • pipelines.py文件

      import scrapy
      from imgspider.items import ImgspiderItem class ImgSpiderSpider(scrapy.Spider):
      name = 'img_spider'
      # allowed_domains = ['www.xxx.com']
      start_urls = ['http://www.521609.com/daxuemeinv/']
      url = 'http://www.521609.com/daxuemeinv/list8%d.html'
      pageNum = 1 def parse(self, response):
      li_list = response.xpath('//*[@id="content"]/div[2]/div[2]/ul/li')
      # 拼接图片url
      for li in li_list:
      print(self.pageNum)
      img_src = 'http://www.521609.com' + li.xpath('./a[1]/img/@src').extract_first()
      item = ImgspiderItem()
      item['src'] = img_src
      yield item if self.pageNum < 3:
      self.pageNum += 1
      new_url = format(self.url % self.pageNum)
      yield scrapy.Request(new_url, callback=self.parse)

scrapy --爬取媒体文件示例详解的更多相关文章

  1. Python爬虫之爬取淘女郎照片示例详解

    这篇文章主要介绍了Python爬虫之爬取淘女郎照片示例详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧 本篇目标 抓取淘宝MM ...

  2. Python爬虫:爬取喜马拉雅音频数据详解

    前言 喜马拉雅是专业的音频分享平台,汇集了有声小说,有声读物,有声书,FM电台,儿童睡前故事,相声小品,鬼故事等数亿条音频,我最喜欢听民间故事和德云社相声集,你呢? 今天带大家爬取喜马拉雅音频数据,一 ...

  3. python 爬取媒体文件(使用chrome代理,启动客户端,有防火墙)

    #coding = utf-8 ''' 中文转经纬度 ''' import time,json import urllib.request from selenium import webdriver ...

  4. python 爬取媒体文件(无防火墙)

    #coding = utf-8 import requests import pandas as pd import os,time root_path = './根目录/' input_file = ...

  5. Scrapy框架——介绍、安装、命令行创建,启动、项目目录结构介绍、Spiders文件夹详解(包括去重规则)、Selectors解析页面、Items、pipelines(自定义pipeline)、下载中间件(Downloader Middleware)、爬虫中间件、信号

    一 介绍 Scrapy一个开源和协作的框架,其最初是为了页面抓取 (更确切来说, 网络抓取 )所设计的,使用它可以以快速.简单.可扩展的方式从网站中提取所需的数据.但目前Scrapy的用途十分广泛,可 ...

  6. 【转载】教你分分钟学会用python爬虫框架Scrapy爬取心目中的女神

    原文:教你分分钟学会用python爬虫框架Scrapy爬取心目中的女神 本博文将带领你从入门到精通爬虫框架Scrapy,最终具备爬取任何网页的数据的能力.本文以校花网为例进行爬取,校花网:http:/ ...

  7. 转 Scrapy笔记(5)- Item详解

    Item是保存结构数据的地方,Scrapy可以将解析结果以字典形式返回,但是Python中字典缺少结构,在大型爬虫系统中很不方便. Item提供了类字典的API,并且可以很方便的声明字段,很多Scra ...

  8. 在java poi导入Excel通用工具类示例详解

    转: 在java poi导入Excel通用工具类示例详解 更新时间:2017年09月10日 14:21:36   作者:daochuwenziyao   我要评论   这篇文章主要给大家介绍了关于在j ...

  9. 史上最全的maven pom.xml文件教程详解

    <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/20 ...

随机推荐

  1. 【windows 访问控制】十、词汇列表和对应C#类、枚举、命名空间

    principals:主体 主体包含标识(identity 对用来来说就是用户名,对程序来说就是SID)和用户角色(role 对用户来说就是 组名 对程序来说就是组SID)subject:主体.主语i ...

  2. 用NSoup解析HTML

    1.在NuGet程序包中添加NSoup包 public static void TestNSoup(string urlStr) { WebClient wc = new WebClient(); b ...

  3. redis缓存雪崩和缓存穿透

    缓存雪崩:由于原有的缓存过期失效,新的缓存还没有缓存进来,有一只请求缓存请求不到,导致所有请求都跑去了数据库,导致数据库IO.内存和CPU眼里过大,甚至导致宕机,使得整个系统崩溃. 解决思路:1,采用 ...

  4. 02-asio学习

    https://blog.csdn.net/weixin_42881084/article/details/101996032 https://blog.csdn.net/Marble_ccp/art ...

  5. pip安装包失败的常见解决方法

    pip安装包失败的常见解决方法 方法一 当安装包失效的时候可以去网站下载whl文件.下载的时候应该先查看电脑上 python 的版本. 地址:https://www.lfd.uci.edu/~gohl ...

  6. Go基础知识梳理(二)

    Go基础知识梳理(二) 简单函数的定义 //有参数有返回值 func sum(a int, b int) int { return a + b } //无返回值 func sum(a int, b i ...

  7. Latex 特殊字符汇总

  8. 2022年官网下安装RabbitMQ最全版与官网查阅方法

    目录 一.Erlang环境部署 1.百度搜索"Erlang",或者访问网址:https://www.erlang.org/,找到DOWNLOAD双击进入. 2.找到支持的windo ...

  9. linux定时任务 - crontab定时任务

    crontab 定时任务命令 linux 系统则是由 cron (crond) 这个系统服务来控制的.Linux 系统上面原本就有非常多的计划性工作,因此这个系统服务是默认启动的.另 外, 由于使用者 ...

  10. Spring-MyBatis的配置文件

    <?xml version="1.0" encoding="UTF8"?> <beans xmlns="http://www.spr ...