Scrapy 正在参加 2020 年度 OSC 中国开源项目评选,请投票支持!
Scrapy 在 2020 年度 OSC 中国开源项目评选 中已获得 {{ projectVoteCount }} 票,请投票支持!
投票让它出道
已投票
授权协议 BSD
开发语言 Python 查看源码 »
操作系统 跨平台
软件类型 开源软件
所属分类 应用工具网络爬虫
开发厂商
地区 不详
提 交 者 红薯
适用人群 未知
收录时间 2011-01-12

软件简介

Scrapy 是一套基于基于Twisted的异步处理框架,纯python实现的爬虫框架,用户只需要定制开发几个模块就可以轻松的实现一个爬虫,用来抓取网页内容以及各种图片,非常之方便~

示例代码:

$pip install scrapy
$cat > myspider.py <<EOF
import scrapy

class BlogSpider(scrapy.Spider):
    name = 'blogspider'
    start_urls = ['https://blog.scrapinghub.com']

    def parse(self, response):
        for title in response.css('h2.entry-title'):
            yield {'title': title.css('a ::text').extract_first()}

        next_page = response.css('div.prev-post > a ::attr(href)').extract_first()
        if next_page:
            yield scrapy.Request(response.urljoin(next_page), callback=self.parse)
EOF
$scrapy runspider myspider.py
展开阅读全文

代码

的 Gitee 指数为
超过 的项目

评论 (3)

加载中
Command "/usr/bin/python3 -u -c "import setuptools, tokenize;__file__='/tmp/pip-install-24up2vs0/Twisted/setup.py';f=getattr(tokenize, 'open', open)(__file__);code=f.read().replace('\r\n', '\n');f.close();exec(compile(code, __file__, 'exec'))" install --record /tmp/pip-record-tdls7hb4/install-record.txt --single-version-externally-managed --compile" failed with error code 1 in /tmp/pip-install-24up2vs0/Twisted/
2019/02/26 18:35
回复
举报
寻找一个小团队做新闻客户端数据抓取,感兴趣可微信联系zx_wander
2017/05/14 16:18
回复
举报
更多评论
发表了资讯
08/05 07:20

Scrapy 2.3.0 发布,Python 爬虫框架

Scrapy 2.3.0 发布了。Scrapy 是一套基于 Twisted 的异步处理框架,纯 Python 实现的爬虫框架,用户只需要定制开发几个模块就可以轻松的实现一个爬虫,用来抓取网页内容以及各种图片。 此版本主要更新亮点包括: Feed 导出现在支持 Google Cloud Storage 作为存储后端 新的 FEED_EXPORT_BATCH_ITEM_COUNT 设置允许分批交...

2
4
发表了资讯
06/25 07:11

Scrapy 2.2.0 发布,Python 爬虫框架

Scrapy 2.2.0 发布了。Scrapy 是一套基于 Twisted 的异步处理框架,纯 Python 实现的爬虫框架,用户只需要定制开发几个模块就可以轻松的实现一个爬虫,用来抓取网页内容以及各种图片。 此版本主要更新亮点包括: 要求 Python 3.5.2+ 数据类对象和属性对象现在是有效的项目类型 新的 TextResponse.json 方法 新的 bytes_...

0
7
发表了资讯
03/05 07:43

Scrapy 2.0.0 发布,Python 爬虫框架

Scrapy 2.0.0 发布了。Scrapy 是一套基于 Twisted 的异步处理框架,纯 Python 实现的爬虫框架,用户只需要定制开发几个模块就可以轻松的实现一个爬虫,用来抓取网页内容以及各种图片。 此版本主要更新亮点包括: 不再支持 Python 2 部分协程语法支持和实验性异步支持 新的 Response.follow_all 方法 FTP 对媒体管道的支持...

1
7
发表了资讯
2019/07/28 07:05

Scrapy 1.7.0 发布,Python 爬虫框架

Scrapy 1.7.0 发布了。Scrapy 是一套基于 Twisted 的异步处理框架,纯 Python 实现的爬虫框架,用户只需要定制开发几个模块就可以轻松的实现一个爬虫,用来抓取网页内容以及各种图片。 此版本主要更新亮点包括: 改进多个域的抓取 更简洁的将参数传递给回调函数的方法 JSON 请求新类 改进基于规则的爬虫 feed export 的新...

3
22
发表了资讯
2019/02/02 06:56

Scrapy 1.6.0 发布,Web 爬虫框架

Scrapy 1.6.0 发布了,Scrapy 是一套基于 Twisted 的异步处理框架,纯 Python 实现的爬虫框架,用户只需要定制开发几个模块就可以轻松的实现一个爬虫,用来抓取网页内容以及各种图片。 主要更新内容有: 更好的 Windows 支持; 兼容 Python 3.7; 文档更新,包括了从 .extract_first() + .extract() API 到 .get() + .ge...

2
13
发表了资讯
2017/12/30 07:38

Scrapy 1.5.0 发布,Web 爬虫框架

Scrapy 1.5.0 发布了,Scrapy 是一套基于 Twisted 的异步处理框架,纯 Python 实现的爬虫框架,用户只需要定制开发几个模块就可以轻松的实现一个爬虫,用来抓取网页内容以及各种图片。 更新内容: 在调用Feed导出存储之前,URI会被重新设置。 避免在项目加载器中缺少基本项目字段 添加测试报告给Travis 修复#3034,CSV...

2
19
发表了资讯
2017/05/19 07:59

Scrapy 1.4.0 发布,Web 爬虫框架

Scrapy 1.4.0 发布了,Scrapy 是一套基于 Twisted 的异步处理框架,纯 Python 实现的爬虫框架,用户只需要定制开发几个模块就可以轻松的实现一个爬虫,用来抓取网页内容以及各种图片。 Scrapy 1.4 没有带来许多令人惊叹的新功能,但进行了相当多的方便的改进。 Scrapy 现在通过新的 :setting:`FTP_USER` 和 :setting:`FT...

2
39
发表了资讯
2017/03/11 06:57

Scrapy 1.3.3 发布,Web 爬虫框架

Scrapy 1.3.3 发布了,Scrapy 是一套基于基于 Twisted 的异步处理框架,纯 Python 实现的爬虫框架,用户只需要定制开发几个模块就可以轻松的实现一个爬虫,用来抓取网页内容以及各种图片。 本次更新主要是 bug 修复,详情如下: Bug 修复 使 SpiderLoader 再次提高 ImportError 缺省的依赖和错误:设置:`SPIDER_MODULES`...

2
38
发表了资讯
2017/03/04 07:27

Scrapy 1.2.3,1.1.4 和 1.0.7 发布,web 爬虫框架

Scrapy 1.2.3,1.1.4 和 1.0.7 发布了。Scrapy 是一套基于基于Twisted的异步处理框架,纯python实现的爬虫框架,用户只需要定制开发几个模块就可以轻松的实现一个爬虫,用来抓取网页内容以及各种图片。 此更新版本暂未提供更新内容,你可查看发行页保持关注。 下载地址: https://github.com/scrapy/scrapy/releases/ta...

2
30
发表了资讯
2017/02/14 07:29

Scrapy 1.3.2 发布,web 爬虫框架

Scrapy 1.3.2 发布了。Scrapy 是一套基于基于Twisted的异步处理框架,纯python实现的爬虫框架,用户只需要定制开发几个模块就可以轻松的实现一个爬虫,用来抓取网页内容以及各种图片。 更新如下: Bug 修复 Preserve crequest class when converting to/from dicts (utils.reqser) (issue 2510). Use consistent select...

4
38
发表了资讯
2017/02/09 07:10

Scrapy 1.3.1 发布,web 爬虫框架

Scrapy 1.3.1 发布了。 Scrapy 是一套基于基于Twisted的异步处理框架,纯python实现的爬虫框架,用户只需要定制开发几个模块就可以轻松的实现一个爬虫,用来抓取网页内容以及各种图片。 该版本暂未提供更新内容,提交记录如下: 当 to/from dicts 转换时保留请求类 从 elacuesta / reqser_request_class 合并拉取请求#2...

5
25
发表了资讯
2016/12/22 07:48

Scrapy 1.3.0 发布,web 爬虫框架

Scrapy 1.3.0 发布了。 Scrapy 是一套基于基于Twisted的异步处理框架,纯python实现的爬虫框架,用户只需要定制开发几个模块就可以轻松的实现一个爬虫,用来抓取网页内容以及各种图片。 该版本暂未提供更新内容,您可点击此处查看改进情况。 下载地址: Source code (zip) Source code (tar.gz)...

2
55
发表了资讯
2016/12/07 08:22

Scrapy 1.2.2 发布,Web 爬虫框架

Scrapy 1.2.2 发布了。 Scrapy 是一套基于基于Twisted的异步处理框架,纯python实现的爬虫框架,用户只需要定制开发几个模块就可以轻松的实现一个爬虫,用来抓取网页内容以及各种图片。 更新内容: Bug 修复 Fix a cryptic traceback when a pipeline fails on open_spider() (issue 2011) Fix embedded IPython shell v...

5
41
发表了资讯
2016/10/22 00:00

Scrapy 1.2.1 发布,web 爬虫框架

Scrapy 1.2.1 发布了。 Scrapy 是一套基于基于Twisted的异步处理框架,纯python实现的爬虫框架,用户只需要定制开发几个模块就可以轻松的实现一个爬虫,用来抓取网页内容以及各种图片。 更新内容: 新功能 New FEED_EXPORT_ENCODING setting to customize the encoding used when writing items to a file. This can be ...

0
26
发表了资讯
2016/10/04 00:00

Scrapy 1.2.0 发布,web 爬虫框架

Scrapy 1.2.0 发布了。 Scrapy 是一套基于基于Twisted的异步处理框架,纯python实现的爬虫框架,用户只需要定制开发几个模块就可以轻松的实现一个爬虫,用来抓取网页内容以及各种图片。 更新内容: 新特性 New FEED_EXPORT_ENCODING setting to customize the encoding used when writing items to a file. This can be ...

8
44
发表了资讯
2016/09/23 00:00

Scrapy 1.1.3 发布,web 爬虫框架

Scrapy 1.1.3 发布了,Scrapy 是一套基于基于Twisted的异步处理框架,纯python实现的爬虫框架,用户只需要定制开发几个模块就可以轻松的实现一个爬虫,用来抓取网页内容以及各种图片。 暂无相关改进记录,持续关注,可点击这里。或查看提交记录,了解更多信息。 下载地址: http://scrapy.org/download/ Source code (z...

2
40
2016/08/19 00:00

Scrapy 1.1.2 发布,web 爬虫框架

Scrapy 1.1.2 发布了,Scrapy 是一套基于基于Twisted的异步处理框架,纯python实现的爬虫框架,用户只需要定制开发几个模块就可以轻松的实现一个爬虫,用来抓取网页内容以及各种图片。 暂无相关改进记录,持续关注,可点击这里。或查看提交记录,了解更多信息。 下载地址:http://scrapy.org/download/...

1
32
发表了资讯
2016/07/14 00:00

Scrapy 1.1.1 发布,web 爬虫框架

Scrapy 1.1.1 发布了,Scrapy 是一套基于基于Twisted的异步处理框架,纯python实现的爬虫框架,用户只需要定制开发几个模块就可以轻松的实现一个爬虫,用来抓取网页内容以及各种图片,非常之方便。 暂无相关官方改进记录,可查看github提交记录,了解更多。 下载地址: Source code (zip) Source code (tar.gz)...

5
39
发表了资讯
2016/05/12 00:00

Scrapy 1.1.0 发布,web 爬虫框架

Scrapy 1.1.0 发布了。Scrapy 是一套基于基于Twisted的异步处理框架,纯python实现的爬虫框架,用户只需要定制开发几个模块就可以轻松的实现一个爬虫,用来抓取网页内容以及各种图片,非常之方便。 改进记录如下: Scrapy 1.1 has beta Python 3 support (requires Twisted >= 15.5). See:ref:`news_betapy3` for more d...

5
43
发表了资讯
2016/05/05 00:00

scrapy 1.0.6 发布,web 爬虫框架

scrapy 1.0.6 发布了。 Scrapy 是一套基于基于Twisted的异步处理框架,纯python实现的爬虫框架,用户只需要定制开发几个模块就可以轻松的实现一个爬虫,用来抓取网页内容以及各种图片,非常之方便。 下载地址: Source code (zip) Source code (tar.gz)...

4
47
没有更多内容
加载失败,请刷新页面
点击加载更多
加载中
下一页
发表了博客
2018/05/18 15:06

Scrapy 和 scrapy-redis的区别

Scrapy 和 scrapy-redis的区别 Scrapy 是一个通用的爬虫框架,但是不支持分布式,Scrapy-redis是为了更方便地实现Scrapy分布式爬取,而提供了一些以redis为基础的组件(仅有组件)。 pip install scrapy-redis Scrapy-redis提供了下面四种组件(components):(四种组件意味着这四个模块都要做相应的修改) Scheduler Dupli...

0
0
发表了博客
2019/04/10 10:10

scrapy和scrapy-redis的区别

scrapy是一个python爬虫框架,爬取的效率极高,具有高度的定制性,但是不支持分布式。而scrapy-redis是一套基于redis库,运行在scrapy框架之上的组件,可以让scapy支持分布式策略 Slaver端共享Master端redis数据库里的item 队列、请求队列和请求指纹集合。 选择redis数据库的原因:   redis支持主从同步,而且数据都是...

0
0
发表了博客
2018/07/12 00:34

scrapy和scrapy-redis框架

1、scrapy scrapy作为一款优秀的爬虫框架,在爬虫方面有这众多的优点。能快速、高层次的屏幕抓取和web抓取框架,用于抓取web站点并从页面中提取结构化的数据。 它的主要组件有如下几种: 引擎(Scrapy):用来处理整个系统的数据流处理, 触发事务(框架核心) 调度器(Scheduler):用来接受引擎发过来的请求, 压入队列中,...

0
0
发表了博客
2014/06/13 22:23

scrapy-1 安装scrapy

我们这里会详细讲解,scrapy的架构,模块之间的调用。

0
0
发表于AI & 大数据专区
2015/12/15 00:32

Scrapy 入门:Hello Scrapy

scrapy install 官方文档方式 其实现在scrapy 的文档做的挺好, 安装文档在首页就有 点我点我。 下面说说我的另类安装方法,我说这个方法,在某些方面有优势,但不是绝对优势,利弊自己取舍。 Windows 自定义安装 打开 https://pypi.python.org 。 在页面的搜索框中输入 scrapy, 开始搜索,找到最新的版本,我这个时候是...

0
6
发表了博客
2019/05/27 15:15

scrapy 改 scrapy-redis

1.spider 修改 class CgysSpider(scrapy.Spider): name = 'clispider' start_urls = ['https://search.bilibili.com/all?keyword=%E6%A9%99%E6%9E%9C%E5%8C%BB%E7%94%9F'] # 改成 from scrapy_redis.spiders import RedisSpider class ClispiderSpider(RedisSpider): name = 'clispider' redis_...

0
0
发表了博客
2018/01/19 16:57

scrapy

scrapy startproject tutorial scrapy crawl dmoz -o dmoz.json scrapy crawl dmoz -o dmoz.jl scrapy crawl dmoz -o dmoz.csv ---------------------------------------------------------------------- scrapy shell "http://example.webscraping.com/places/default/view/Afghanistan-1" In [1]: response.css('title...

0
0
发表了博客
06/12 16:37

爬虫Scrapy框架-Scrapy Shell

Scrapy终端是一个交互终端,我们可以在未启动spider的情况下尝试及调试代码,也可以用来测试XPath或CSS表达式,查看他们的工作方式,方便我们爬取的网页中提取的数据。 如果安装了 IPython ,Scrapy终端将使用 IP...

0
0
没有更多内容
加载失败,请刷新页面
点击加载更多
加载中
下一页
发表了问答
07/10 08:40

关于爬取没有设置robots.txt的网站的法律风险

如果要爬取的网站上没有设置robots.txt,那么是不是代表默认都允许爬取呢?有没有法律风险呢?

27
2
发表了问答
2017/06/30 15:32

python xpath 如何过滤div中的script和style标签

爬取一个页面中的div,想获取div中的文字,我是这么写的: selector.xpath('//div[@class="text-con"]').xpath('string(.)').extract()[0].lstrip().rstrip() 但在这个 div中包含一个 style标签和两个script标签,这样把样式和script中的代码也获取了,怎么过滤script标签和style标签,然后只获取文字内容,网上看了看说...

4
0
发表了问答
2013/11/16 22:55

scrapy如何正确的处理cookie?

试着写一个spider 爬一个论坛(dz7.2),目标板块是要求登录了,目标站是cookie来验证身份的。我模拟登录了,登录成功后,在访问目标板块的时候,一直提示要求登录,有点不明白怎么回事了,不知道是不是cookie没有处理好,过来请教一下。下面是运行时log和spider 代码. 2013-11-16 14:50:57+0000 [scrapy] INFO: Scrapy 0....

3
1
发表了问答
2019/09/04 19:32

scrapy xpath 中我想知道这个href怎么定位

7
0
发表了问答
2013/04/01 14:31

关于爬虫如何突破网站对爬虫的限制

现在,我正在做一个网站爬虫,但是应该是被一个网站视为攻击了吧!我用浏览器访问这个网站,显示正常,但是程序访问,返回的是电信的那个域名错误;为了躲过限制: 1.采用了禁用cookie; 2.访问google cache(由于学校上午必须安装学校的客户端,使用vpn一会后,就把我链接断了); 3.使用torproject(tor被封了,要想使用...

12
4
发表了问答
2014/07/31 10:17

爬取京东的网站: 'Response' object has no attribute 'body_as_unicode'

rt,使用scrapy shell测试语句:scrapy shell "http://list.jd.com/list.html?cat=670,671,2694" 也会出现exceptions.AttributeError: 'Response' object has no attribute 'body_as_unicode'这个问题,之前爬了几个其他网站都可以,请教一下这是什么问题呢?...

4
0
2019/02/10 17:35

Scrapy:在pipeline的process_item中的一个并发/线程安全方面的问题

如,一个将数据保存到excel文件的管道类,作为一个通用类,不写死Item类的判断过程,用dict来map类名和文件的关系, outputs = {‘AAAAAItem’: dict(wb=wb, ws=ws), 'BBBBBItem': dict(wb=wb, ws=ws), ...} 所以对于这个dict来说,只有来了一个新的没见过的Item实例才会初始化与之对应的文件。 def process_item(self,...

1
0
发表了问答
2014/11/04 21:52

scrapy怎么多次向一个url请求信息,然后获取返回数据

大家好,我刚开始学习使用scrapy,希望能请教一个问题。 这是我的spiders文件夹中爬虫文件的代码 class PabhSpider(CrawlSpider): name = 'pabh' allowed_domains = ['xxx'] def start_requests(self): url = 'http://xxx' num1 = '01' formdata = { "depart":num, ...

2
0
发表于AI & 大数据专区
2018/08/29 22:49

关于python获取请求后的XHR数据

本人正在爬取一个网站,输入网站地址后返回的是异步的ajax请求, 我想获取所有的这些xhr以及它们的Form Data 请问有没有办法呢。困扰一天了 不知道怎么办? 求大神解救一下,用的是python 以及Scrap'y

4
0
发表于AI & 大数据专区
2018/07/24 15:29

python scrapy 多个不同的页面数据组合,管道被调用多次,导致字典报错keyerror的问题

爬虫源码 def parse(self, response): data = json.loads(response.text)['result']['data'] if data is None: return for str in data: it_item = SinastarItem() it_item['userid'] = str['_id'] it_item['name'] = str['title'] it_item['starurl'] = str['url'...

6
1
发表了问答
2015/08/17 21:04

scrapy 自动抓取下一页的链接

我想要爬取搜狐新闻 网址是: http://news.sohu.com/guoneixinwen.shtml 有很多页需要爬取,按以往的一些网站,源码会在下一页按钮的地方显示出下一页的href,然后我只要抓出这个href就可以爬到了。但上边这个的下一页是用js来 跳转的,不知道这种情况该如何处理呢? <a onclick="javascript:if(!isIndex){go(curPage-1)};...

2
1
发表于运维专区
2018/01/16 10:25

scrapy动态的从redis队列中获取源,并启动spider

需求:有个redis队列,我需要从队列中获取数据(源相关的配置规则),然后加入到scrapy的spider中,并启动。 目前的解决方法: 开启了个守护线程,使用scrapy的CrawlerRunner来启动。但是这样在windows下运行正常,在linux下,twisted使用的epoll一定时间内没有事件的话,dopoll方法进入无限等待状态,加入新的爬虫也不会...

3
0
发表了问答
2017/09/02 09:03

求助 scrapy 调试时可以看到数据爬去成功,但是命令行csv文件导出为空

python3.6 scrapy 1.4.0 断点调试时可以看到数据,但是命令行导出csv文件为空。 spider文件: import scrapy import re from lxml import etree from scrapy.http import Request from dingdian.items import DingdianItem ######################################################################## class myspider...

1
0
发表了问答
2017/07/17 17:47

scrapy 模拟登录知乎遇到验证码不通过的问题

# -*- coding: utf-8 -*- import scrapy from scrapy.shell import inspect_response from scrapy.http import Request, FormRequest #from scrapy.selector import Selector import requests import time import json class ZhihuSpider(scrapy.Spider): name = 'zhihu' allowed_domains = ['zhihu.com'] ...

1
0
发表了问答
2016/05/09 19:17

scrapy爬取list页面下级详细页的翻页,及mysql相关

问题描述: 想抓取某类列表页中的新闻详细页,其中遇见有的新闻详细页有翻页,就是一长篇文章用分页来隔开,有的则没有。而我想储存的mysql每行字段格式如下: domain, url, 标题, 简介, 全部翻页内容 这样才能方便生成网页,如果每个翻页都是一行,那我想不到要怎么调用。我自己想的是能不能把所有翻页正文都写到item的...

3
1
2017/03/25 16:39

在scrapy+redis实现分布式爬虫中,如何实现对各个分布的爬虫获取URL的均衡

我在用scrapy+redis实现一个简单的分布式爬虫,但运行后,一个爬虫爬地快,一个爬虫 爬地慢,我想请教各位如何实现redis对各个爬虫获取URL速度或者频率的控制以达到均衡? 谢谢!

1
0
发表了问答
2017/07/13 13:48

scrapy 下载百度新闻图片错误

报错日志如下: 2017-07-12 21:26:48 [scrapy.pipelines.files] WARNING: File (code: 403): Error downloading file from <GET http://t10.baidu.com/it/u=1495155540,1076493806&fm=55&s=BF904F831EEF3E8C6781B5210300E0F1&w=121&h=81&img.JPEG> referred in <None> 2017-07-12 21:26:48 [scrapy.core.scraper] WARNIN...

1
0
发表了问答
2017/06/29 08:27

python Scrapy同一个站点如何登录多个账号

登录部分代码如下:     def start_requests(self,user,passw): yield scrapy.FormRequest( url = self.login_url, headers = self.headers, formdata={ 'action': 'chk', 'username':muser, ...

2
0
发表了问答
2017/06/26 17:24

scrapy知乎模拟登录失败

下面的代码模拟登录知乎,在登录的时候没有成功 check_login提示失败: check_login { "r": 1, "errcode": 1991829, "data": {"captcha":"\u9a8c\u8bc1\u7801\u4f1a\u8bdd\u65e0\u6548 :(","name":"ERR_VERIFY_CAPTCHA_SESSION_INVALID"}, "msg": "\u9a8c\u8bc1\u7801\u4f1a\u8bdd\u65e0\u6548 :(" } 有没有兄弟有成功的...

3
0
发表了问答
2017/02/12 19:02

Scrapy 是不是不能爬取https的网站?为什么https各种通不过?

Scrapy 是不是不能爬取https的网站?

10
0
没有更多内容
加载失败,请刷新页面
点击加载更多
加载中
下一页
3 评论
486 收藏
分享
OSCHINA
登录后可查看更多优质内容
返回顶部
顶部