Skip to main content

Send HTTP notifications on spider actions

Project description

A Scrapy extension to be used, for example, with HTTP Callback Tasks of Celery project.

Installation

Install via pip:

pip install scrapy-notifications

Tested with

  • Python 2.7+
  • Scrapy 0.16

Setup

Basically you need configure SPIDER_NOTIFICATION_ENABLED, SPIDER_NOTIFICATION_URL and add the scrapy_notifications.extensions.SpiderNotification extension to your Scrapy project settings.py.

Example:

EXTENSIONS = {
    'scrapy_notifications.extensions.SpiderNotification': 500,
}
SPIDER_NOTIFICATION_ENABLED = True
SPIDER_NOTIFICATION_URL = 'http://app.example.com/spider-task/'

By default HTTP requests are sent with the spider name attribute as an URL parameter. But optionally you can also specify a list of spider attributes passed as URL parameters on SPIDER_NOTIFICATION_ATTRS.:

SPIDER_NOTIFICATION_ATTRS = ['name', 'jobid']

Usage

For example crawling with the dmoz spider used in the Scrapy tutorial:

scrapy crawl -a jobid=fe648c57f8 dmoz

will generate a HTTP request like this:

http://app.example.com/spider-task/?name=dmoz&jobid=fe648c57f8

Contributing

Want to contribute? Great! Bug reports and code and documentation patches are greatly appretiated. Please file bugs and send pull requests using the issue tracker.

Project details


Release history Release notifications

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Files for scrapy-notifications, version 0.1.0
Filename, size & hash File type Python version Upload date
scrapy-notifications-0.1.0.tar.gz (2.3 kB) View hashes Source None

Supported by

Elastic Elastic Search Pingdom Pingdom Monitoring Google Google BigQuery Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN SignalFx SignalFx Supporter DigiCert DigiCert EV certificate StatusPage StatusPage Status page