Scrapy抓取360网站图片

项目名称:抓取360网站图片

目标url:http://image.so.com

项目描述:利用Scrapy的ImagePipeline抓取360网站的图片

要利用Scrapy抓取图片,第一步还是先定义item

1 # -*-coding: utf-8 -*-
2 import scrapy
3
4 class ImageItem(scrapy.Item):
5     image_urls = scrapy.Field()

第二步是在settings.py中打开ImagePipeline,然后定义一下文件的存储路径。

1 ITEM_PIPELINES = {
2     ‘scrapy.pipelines.images.ImagesPipeline‘: 1,
3 }
4
5 IMAGES_STORE = ‘alfred_images‘

第三步就是写spider了

 1 # -*- coding: utf-8 -*-
 2 import scrapy
 3 import json   from ..items import ImageItem
 4
 5 class ImagesSpider(scrapy.Spider):
 6     name = ‘images‘
 7     start_urls = ‘http://image.so.com/zj?ch=home&sn=90&listtype=new&temp=1‘
 8
 9     def parse(self, response):
10         pics = json.loads(response.body) #因为返回的是json数据,所有这里多了一个解析的步骤
11         for i in pics[‘list‘]:
12             item = ImageItem()
13             item[‘image_urls‘] = [i["qhimg_url"]] #这里注意,图片的url必须放在一个列表中,否则会出现异常
14             yield item

几个要注意的地方:

  1.最好在item.py中定义好image_urls = Field()

  2.记得在settings中开启ImagePipeline,并且定义好图片储存路径

  3.图片的url必须放在列表中,必须放在列表中,必须放在列表中。

原文地址:https://www.cnblogs.com/Alfred-ou/p/9329392.html

时间: 2024-09-29 17:27:50

Scrapy抓取360网站图片的相关文章

scrapy抓取某些网站出现AttributeError_ object has no attribute 的解决办法的代码.txt

把写内容过程中经常用的内容段备份一下,下面的内容内容是关于scrapy抓取某些网站出现AttributeError: 'Response' object has no attribute 'body_as_unicode'的解决办法的内容,应该是对码农们也有用. def parse(self, response): hxs=Selector(response) for url in detail_url_list: if 'goods' in url: yield Request(url, ca

scrapy抓取所有网站域名

需求分析 从一个门户网站出发,试图爬取该门户网站所有链接,如此递归下去,发现新域名则保存起来,每个域名网站只爬取一次.有了这些数据在通过外部DNS获得IP,就可以自己搭建DNS服务器了 创建项目 创建一个项目,名叫crawl_all_domainname scrapy startproject crawl_all_domainname 创建爬虫较本domain.py, 从han123.com开始爬行 cd crawl_all_domainname/crawl_all_domainname cra

分布式爬虫:使用Scrapy抓取数据

分布式爬虫:使用Scrapy抓取数据 Scrapy是Python开发的一个快速,高层次的屏幕抓取和web抓取框架,用于抓取web站点并从页面中提取结构化的数据.Scrapy用途广泛,可以用于数据挖掘.监测和自动化测试. 官方主页: http://www.scrapy.org/ 中文文档:Scrapy 0.22 文档 GitHub项目主页:https://github.com/scrapy/scrapy Scrapy 使用了 Twisted 异步网络库来处理网络通讯.整体架构大致如下(注:图片来自

scrapy抓取的页面中文会变成unicode字符串

不了解编码的,需要先补下:http://www.cnblogs.com/jiangtu/p/6245264.html 现象:从scrapy抓取的页面中文会变成unicode字符串,如下图 2017-03-28 23:00:12 [scrapy.core.scraper] DEBUG: Scraped from <200 https://www.lagou.com/jobs/2617468.html> {'describe': [u'<div>\n <p>\u5c97\u

使用wget工具抓取网页和图片 成功尝试

使用wget工具抓取网页和图片 发表于1年前(2014-12-17 11:29)   阅读(2471) | 评论(14) 85人收藏此文章, 我要收藏 赞7 wget 网页抓取 图片抓取 目录[-] 奇怪的需求 wget概述 wget尝试 wget正解 奇怪的需求 公司需要将服务器的网页缓存到路由器,用户在访问该网页时就直接取路由器上的缓存即可.虽然我不知道这个需求有什么意义,但还是尽力去实现吧. wget概述 wget是unix和类unix下的一个网页抓取工具,待我熟悉它后,发现它的功能远不止

使用wget工具抓取网页和图片

使用wget工具抓取网页和图片: 包括css\js\html\图片文件 wget -e robots=off -w 1 -xq -np -nH -pk -m -t 1 -P "$PATH" "$URL" 这里robots=off是因为wget默认会根据网站的robots.txt进行操作,如果robots.txt里是User-agent: * Disallow: /的话,wget是做不了镜像或者下载目录的 -e 用来执行额外的.wgetrc命令,会在.wgetrc中所

scrapy抓取拉勾网职位信息(一)——scrapy初识及lagou爬虫项目建立

本次以scrapy抓取拉勾网职位信息作为scrapy学习的一个实战演练 python版本:3.7.1 框架:scrapy(pip直接安装可能会报错,如果是vc++环境不满足,建议直接安装一个visual studio一劳永逸,如果报错缺少前置依赖,就先安装依赖) 本篇主要对scrapy生成爬虫项目做一个基本的介绍 tips:在任意目录打开cmd的方式可以使用下面这两种方式 shift + 右键打开cmd(window10的powershell你可以简单理解为cmd升级版) 在路径框直接输入cmd

nutch2.1抓取中文网站

对nutch添加中文网站抓取功能. 1.中文网页抓取 A.调整mysql配置,避免存入mysql的中文出现乱码.修改 ${APACHE_NUTCH_HOME} /runtime/local/conf/gora.properties ############################### # MySQL properties            # ############################### gora.sqlstore.jdbc.driver=com.mysql.jd

asp.net如何抓取其他网站的内容

1. 需要引用的类库 using System.Net; using System.IO; using System.Text; using System.Text.RegularExpressions; 2. 获取其他网站网页内容的关键代码 WebRequest request = WebRequest.Create("http://目标网址.com/"); WebResponse response = request.GetResponse(); StreamReader read