This commit is contained in:
Olivia Choi 2026-07-16 09:52:28 +08:00 committed by GitHub
commit da4b1dbe2a
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
1 changed files with 21 additions and 0 deletions

View File

@ -139,6 +139,27 @@ Those objects are:
- ``settings`` - the current :ref:`Scrapy settings <topics-settings>`
Customizing shell variables
---------------------------
If you want to make project-specific helpers, imports, or objects available
whenever the Scrapy shell starts, you can create a custom shell command and
override its ``update_vars`` method. See :ref:`topics-commands` for more
information about creating custom Scrapy commands.
For example, if your project defines a custom ``shell`` command, you can update
the shell namespace like this:
.. code-block:: python
from scrapy.commands.shell import Command as ShellCommand
class Command(ShellCommand):
def update_vars(self, vars):
super().update_vars(vars)
vars["parse_title"] = lambda response: response.css("title::text").get()
Example of shell session
========================