Skip to main content

Page Object pattern for Scrapy

Project description

PyPI Version Supported Python Versions Build Status Coverage report Documentation Status

scrapy-poet is the web-poet Page Object pattern implementation for Scrapy. scrapy-poet allows to write spiders where extraction logic is separated from the crawling one. With scrapy-poet is possible to make a single spider that supports many sites with different layouts.

Read the documentation for more information.

License is BSD 3-clause.

Quick Start

Installation

pip install scrapy-poet

Requires Python 3.8+ and Scrapy >= 2.6.0.

Usage in a Scrapy Project

Add the following inside Scrapy’s settings.py file:

DOWNLOADER_MIDDLEWARES = {
    "scrapy_poet.InjectionMiddleware": 543,
}
SPIDER_MIDDLEWARES = {
    "scrapy_poet.RetryMiddleware": 275,
}

Developing

Setup your local Python environment via:

  1. pip install -r requirements-dev.txt

  2. pre-commit install

Now everytime you perform a git commit, these tools will run against the staged files:

  • black

  • isort

  • flake8

You can also directly invoke pre-commit run –all-files or tox -e linters to run them without performing a commit.

Project details


Download files

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

Source Distribution

scrapy-poet-0.17.0.tar.gz (51.5 kB view details)

Uploaded Source

Built Distribution

scrapy_poet-0.17.0-py3-none-any.whl (27.4 kB view details)

Uploaded Python 3

File details

Details for the file scrapy-poet-0.17.0.tar.gz.

File metadata

  • Download URL: scrapy-poet-0.17.0.tar.gz
  • Upload date:
  • Size: 51.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.12.0

File hashes

Hashes for scrapy-poet-0.17.0.tar.gz
Algorithm Hash digest
SHA256 248d4db6029b268ff766d4386ac56340038ac5dd0723f48ccb079885f0393c38
MD5 b83c5a02de968f587bd2213228983963
BLAKE2b-256 6f2bbf3576f2b0041b7a88a963fbd0dd85d0d392efadaae362e7ad7c2f82613d

See more details on using hashes here.

Provenance

File details

Details for the file scrapy_poet-0.17.0-py3-none-any.whl.

File metadata

  • Download URL: scrapy_poet-0.17.0-py3-none-any.whl
  • Upload date:
  • Size: 27.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.12.0

File hashes

Hashes for scrapy_poet-0.17.0-py3-none-any.whl
Algorithm Hash digest
SHA256 4d6eb1db872604656e9777d7eea9033b8b6146bfedbd4b6079db970964c15a4e
MD5 75129feadcafff4a0a0f0130d5e045cd
BLAKE2b-256 f10fd01b1f94e2654a9dd52a6aa2b41aed53467f44c22bdce6df9698663cfc43

See more details on using hashes here.

Provenance

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page