Modernize some code in examples.

This commit is contained in:
Andrey Rakhmatullin 2026-07-14 14:51:39 +05:00
parent d8ba1571e7
commit f4d1905cca
5 changed files with 7 additions and 8 deletions

View File

@ -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"]:

View File

@ -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):

View File

@ -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

View File

@ -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 <topics-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

View File

@ -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}"]
# ...