跳转到主要内容

将Scrapy爬虫放在HTTP API后面

项目描述

https://raw.githubusercontent.com/scrapinghub/scrapyrt/master/artwork/logo.gif

ScrapyRT (Scrapy实时)

https://github.com/scrapinghub/scrapyrt/workflows/CI/badge.svg https://img.shields.io/pypi/pyversions/scrapyrt.svg https://img.shields.io/pypi/v/scrapyrt.svg https://img.shields.io/pypi/l/scrapyrt.svg Downloads count https://readthedocs.org/projects/scrapyrt/badge/?version=latest

在几分钟内为您的Scrapy项目添加HTTP API。

您向ScrapyRT发送带有蜘蛛名称和URL的请求,然后作为响应,您将获得访问此URL的蜘蛛收集的项目。

  • 所有Scrapy项目组件(例如中间件、管道、扩展)都受支持

  • 您在Scrapy项目目录中运行Scrapyrt。它启动HTTP服务器,允许您安排蜘蛛并以JSON格式获取蜘蛛输出。

快速入门

1. 安装

> pip install scrapyrt

2. 切换到Scrapy项目(例如quotesbot项目)

> cd my/project_path/is/quotesbot

3. 启动ScrapyRT

> scrapyrt

4. 运行您的蜘蛛

> curl "localhost:9080/crawl.json?spider_name=toscrape-css&url=http://quotes.toscrape.com/"

5. 运行更复杂的查询,例如指定Scrapy请求的回调和蜘蛛的邮编参数

>  curl --data '{"request": {"url": "http://quotes.toscrape.com/page/2/", "callback":"some_callback"}, "spider_name": "toscrape-css", "crawl_args": {"zipcode":"14000"}}' http://localhost:9080/crawl.json -v

Scrapyrt将查找scrapy.cfg文件以确定您的项目设置,并且如果找不到将引发错误。请注意,您需要安装所有项目依赖项。

注意

  • 本项目不是Scrapyd(https://scrapyd.readthedocs.io/en/stable/)或Scrapy Cloud(https://www.zyte.com/scrapy-cloud/)或其他用于运行长时间爬取的基础设施的替代品。

  • 不适合长时间运行的爬虫,适合那些从某个网站获取一个响应并快速返回物品的爬虫。

文档

文档在readthedocs上提供。.

支持

开源支持在Github上提供。请创建一个问题(即带有“问题”标签的问题)。

商业支持也由Zyte提供。

许可证

ScrapyRT在BSD 3-Clause许可证下提供。

开发

开发在Github上进行。

由以下支持

AWS AWS 云计算和安全赞助商 Datadog Datadog 监控 Fastly Fastly CDN Google Google 下载分析 Microsoft Microsoft PSF 赞助商 Pingdom Pingdom 监控 Sentry Sentry 错误记录 StatusPage StatusPage 状态页面