Skip to main content

Reusable Scrapy middleware for per-target item limits.

Project description

scrapy-itemlimit

Reusable Scrapy middleware for per-target item limiting during pagination crawls.

Installation

pip install scrapy-itemlimit

Included Middleware

PerTargetItemLimitSpiderMiddleware

Stops further item output for a target key after the configured limit is reached.

Supported settings:

  • PER_TARGET_ITEM_LIMIT (int)
  • TARGET_META_KEY (str, default: brand_token)

Scrapy Settings Example

SPIDER_MIDDLEWARES = {
	"scrapy_itemlimit.middlewares.PerTargetItemLimitSpiderMiddleware": 543,
}

PER_TARGET_ITEM_LIMIT = 100
TARGET_META_KEY = "brand_token"

Development Install

pip install -e .

Build and Publish to PyPI

  1. Bump version in both:
    • setup.py
    • scrapy_itemlimit/__init__.py
  2. Build package:
python -m pip install --upgrade build twine
python -m build
  1. Validate artifacts:
python -m twine check dist/*
  1. Upload:
python -m twine upload dist/*

Optional (recommended first): TestPyPI

python -m twine upload --repository testpypi dist/*

Version

Current package version: 0.2.3

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_itemlimit-0.2.3.tar.gz (2.9 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

scrapy_itemlimit-0.2.3-py3-none-any.whl (3.1 kB view details)

Uploaded Python 3

File details

Details for the file scrapy_itemlimit-0.2.3.tar.gz.

File metadata

  • Download URL: scrapy_itemlimit-0.2.3.tar.gz
  • Upload date:
  • Size: 2.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.3

File hashes

Hashes for scrapy_itemlimit-0.2.3.tar.gz
Algorithm Hash digest
SHA256 ef4a5f5369bb317f7ec8c5ac0674d8d5f1949889a594582dd85b740e583c3070
MD5 238ac2c921682c18a3a812efa536dca8
BLAKE2b-256 842167a936cd125ec66409bb07fb3d4e25ec29851d75aa892a83e480de23d66c

See more details on using hashes here.

File details

Details for the file scrapy_itemlimit-0.2.3-py3-none-any.whl.

File metadata

File hashes

Hashes for scrapy_itemlimit-0.2.3-py3-none-any.whl
Algorithm Hash digest
SHA256 e78ea396118e7923f7ef622ed7b8e784fc07e40ae2f72976ae27c8c48db9bd38
MD5 f6e5ab86c6cf2b2be7228663c5d69cbb
BLAKE2b-256 71612bc5a86243da64b3608952f4f69caa1c1333d628e9a6496838a33192104a

See more details on using hashes here.

Supported by

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