From f4d1905cca7b784f88bff00f6c43ed7e95ebeaa0 Mon Sep 17 00:00:00 2001 From: Andrey Rakhmatullin Date: Tue, 14 Jul 2026 14:51:39 +0500 Subject: [PATCH] Modernize some code in examples. --- docs/topics/developer-tools.rst | 3 +-- docs/topics/request-response.rst | 2 +- docs/topics/settings.rst | 4 ++-- docs/topics/signals.rst | 4 ++-- docs/topics/spiders.rst | 2 +- 5 files changed, 7 insertions(+), 8 deletions(-) diff --git a/docs/topics/developer-tools.rst b/docs/topics/developer-tools.rst index 05dffcdda..a5ffe00f1 100644 --- a/docs/topics/developer-tools.rst +++ b/docs/topics/developer-tools.rst @@ -246,7 +246,6 @@ also request each page to get every quote on the site: .. code-block:: python import scrapy - import json class QuoteSpider(scrapy.Spider): @@ -256,7 +255,7 @@ also request each page to get every quote on the site: start_urls = ["https://quotes.toscrape.com/api/quotes?page=1"] def parse(self, response): - data = json.loads(response.text) + data = response.json() for quote in data["quotes"]: yield {"quote": quote["text"]} if data["has_next"]: diff --git a/docs/topics/request-response.rst b/docs/topics/request-response.rst index a5f799444..8ce827676 100644 --- a/docs/topics/request-response.rst +++ b/docs/topics/request-response.rst @@ -436,7 +436,7 @@ errors if needed: ) def parse_httpbin(self, response): - self.logger.info("Got successful response from {}".format(response.url)) + self.logger.info(f"Got successful response from {response.url}") # do something useful here... def errback_httpbin(self, failure): diff --git a/docs/topics/settings.rst b/docs/topics/settings.rst index a592f8bc5..75e213fc0 100644 --- a/docs/topics/settings.rst +++ b/docs/topics/settings.rst @@ -2209,7 +2209,7 @@ In order to use the reactor installed by Scrapy: def __init__(self, *args, **kwargs): self.timeout = int(kwargs.pop("timeout", "60")) - super(QuotesSpider, self).__init__(*args, **kwargs) + super().__init__(*args, **kwargs) async def start(self): reactor.callLater(self.timeout, self.stop) @@ -2238,7 +2238,7 @@ which raises an exception, becomes: def __init__(self, *args, **kwargs): self.timeout = int(kwargs.pop("timeout", "60")) - super(QuotesSpider, self).__init__(*args, **kwargs) + super().__init__(*args, **kwargs) async def start(self): from twisted.internet import reactor diff --git a/docs/topics/signals.rst b/docs/topics/signals.rst index 531232149..03996bee6 100644 --- a/docs/topics/signals.rst +++ b/docs/topics/signals.rst @@ -34,7 +34,7 @@ Here is a simple example showing how you can catch signals and perform some acti @classmethod def from_crawler(cls, crawler, *args, **kwargs): - spider = super(DmozSpider, cls).from_crawler(crawler, *args, **kwargs) + spider = super().from_crawler(crawler, *args, **kwargs) crawler.signals.connect(spider.spider_closed, signal=signals.spider_closed) return spider @@ -72,7 +72,7 @@ Let's take an example using :ref:`coroutines `: @classmethod def from_crawler(cls, crawler, *args, **kwargs): - spider = super(SignalSpider, cls).from_crawler(crawler, *args, **kwargs) + spider = super().from_crawler(crawler, *args, **kwargs) crawler.signals.connect(spider.item_scraped, signal=signals.item_scraped) return spider diff --git a/docs/topics/spiders.rst b/docs/topics/spiders.rst index 887da0a15..af5c9a565 100644 --- a/docs/topics/spiders.rst +++ b/docs/topics/spiders.rst @@ -314,7 +314,7 @@ Spiders can access arguments in their `__init__` methods: name = "myspider" def __init__(self, category=None, *args, **kwargs): - super(MySpider, self).__init__(*args, **kwargs) + super().__init__(*args, **kwargs) self.start_urls = [f"http://www.example.com/categories/{category}"] # ...