sphinx-scrapy
Sphinx extension for documentation in the Scrapy ecosystem.
Features
Provides a docs tox environment.
Generates a Read the Docs configuration.
Keeps the sphinx-scrapy pin of tox.ini in sync with the pre-commit rev.
Makes documentation builds fail on Sphinx warnings. While you fix existing warnings, you can either suppress them by type in docs/conf.py, or allow all of them in pyproject.toml:
[tool.sphinx-scrapy] fail-on-warning = falseEnables commonly-used Sphinx extensions.
Configures sphinx.ext.intersphinx for Python and Scrapy, and streamlines configuration for additional packages.
Allows you to easily link to Scrapy settings, request metadata keys, signals, commands and stats:
:setting:`BOT_NAME` :setting:`LOG_LEVEL <scrapy:LOG_LEVEL>` :reqmeta:`download_slot` :signal:`spider_opened` :command:`crawl` :stat:`item_scraped_count`Allows you to easily link to GitHub issues and pull requests:
:gh:`1908` :gh:`parsel#12` :gh:`sphinx-doc/sphinx#13000`They render as #1908, parsel#12 and sphinx#13000. Use the number alone for the current repository, which comes from the GitHub URLs in pyproject.toml. For a different repository, its name alone is enough if it is a known repository of the Scrapy ecosystem or it belongs to the same owner as the current repository.
Setup
Configure in pyproject.toml the Python version for documentation builds, e.g.:
[tool.sphinx-scrapy] python-version = "3.14"It must be supported by Read the Docs.
Add any other documentation dependencies, e.g. a Sphinx theme, to a docs dependency group in pyproject.toml:
[dependency-groups] docs = ["sphinx-rtd-theme"]Add to docs/conf.py:
extensions = [ "sphinx_scrapy", ]To automatically configure sphinx.ext.intersphinx for installed supported packages, set:
scrapy_intersphinx_enable_installed = TrueYou can also enable or disable the automatic sphinx.ext.intersphinx configuration of packages manually:
scrapy_intersphinx_enable = [ "parsel", "w3lib", ] scrapy_intersphinx_disable = [ "scrapy", ]The html_baseurl option for sitemap generation is generated automatically based on the project name (pyproject.toml or conf.py) and known documentation URLs (the same used for easy intersphinx configuration) with a fallback to https://<project>.readthedocs.io/en/latest/. You can alternatively define the setting yourself in conf.py.
Add to docs/.gitignore:
/_build/Add to .pre-commit-config.yaml:
repos: - repo: https://github.com/scrapy/sphinx-scrapy rev: 0.15.0 hooks: - id: sphinx-scrapyAdd to tox.ini:
[tox] requires = sphinx-scrapy[tox]==0.15.0 envlist = …,docs
You can now build the docs with:
tox -e docs
Sphinx extensions
The following Sphinx extensions are automatically enabled when you enable sphinx_scrapy:
sphinx-llm-friendly, which documents the llm_friendly_* settings
Intersphinx packages
scrapy_intersphinx_enable supports the following packages:
Release notes
See the release notes for a list of releases and their changes.
Metadata
Release files for sphinx-scrapy 0.15.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | Actions |
|---|---|---|---|---|
| sphinx_scrapy-0.15.0.tar.gz | 14.7 kB | With provenance | Details for sphinx_scrapy-0.15.0.tar.gz |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Actions Reset |
|---|---|---|---|---|
| sphinx_scrapy-0.15.0-py3-none-any.whl | Python 3 | none | any | Details for sphinx_scrapy-0.15.0-py3-none-any.whl |
Total release size: 27.0 kB
Release files / sphinx_scrapy-0.15.0.tar.gz
| Download URL | sphinx_scrapy-0.15.0.tar.gz |
|---|---|
| Size | 14.7 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
66f533d9e72fd411d7a7fbaa735adabc1a5d8ffe3bd980eed386a1ee3675e003
|
|
BLAKE2b-256 checksum How to use checksums |
64fbcc6c120843ae5ed804cd51a5ba50d33de5692db729c10edcdb45ac3611e8
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 27, 2026.
Transparency logRelease files / sphinx_scrapy-0.15.0-py3-none-any.whl
| Download URL | sphinx_scrapy-0.15.0-py3-none-any.whl |
|---|---|
| Size | 12.3 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
5b767eaef6e8af65e705e840668a1ecffaed49e645b2da78c6b45677615743e2
|
|
BLAKE2b-256 checksum How to use checksums |
c8b716beeaa4409de2acc6a7bff9e020b5f16382a6ce561e7a9614b4b152ba5b
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 27, 2026.
Transparency logSecurity for sphinx-scrapy 0.15.0
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
Full provenance
Both files in this release have been uploaded with provenance metadata.
Attestation for sphinx_scrapy-0.15.0.tar.gz
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 27, 2026.
Transparency logA note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.