scrapy response.text не обновляется для двух разных URL - PullRequest
0 голосов
/ 07 мая 2020

Итак, у меня есть две разные функции синтаксического анализа с основной функцией синтаксического анализа. Кажется, вполне нормально.

class abcspider(scrapy.Spider):
    name = 'abc'
    allowed_domains = []
    start_urls = [The main url where products are located]

    def parse(self, response):
        "Extracted the url of each product located on the main url and created a list to loop through"
        for url in urls:
                yield scrapy.Request(url=url, callback=self.parseproduct)


    def parseproduct(self, response):
        """Parse the page for some data and get a product id to form url1 and url2 from their respective url prefixes, which is already known"""
        urls = [url1+url2]

        for url in urls:
            yield scrapy.Request(url=url, callback=self.parsejson)

    def parsejson(self, response):
        """Parse the page for some data and get a product id"""
        data = json.loads(response.text)
        required_field = data["stock"]

Проблема в том, что response.text для двух разных URL-адресов не обновляется в кеше. Итак, я получаю одинаковые результаты для двух разных URL-адресов. Я проверил и убедился, что response.url возвращает правильные URL-адреса для обоих вызовов функции, но, по-видимому, тело ответа не обновляется при втором вызове функции.

Есть предложения? введите описание изображения здесь

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...