gpt4 book ai didi

python - Scrapy 分页不起作用

转载 作者:行者123 更新时间:2023-11-30 22:24:16 25 4
gpt4 key购买 nike

我正在尝试学习Scrapy。

    # -*- coding: utf-8 -*-
import scrapy


class QuotesSpider(scrapy.Spider):
name = 'quotes'
allowed_domains = ['quotes.toscrape.com/']
start_urls = ['http://quotes.toscrape.com/']

def parse(self, response):
quotes = response.xpath('//*[@class="quote"]')

for quote in quotes:
text = quote.xpath(".//*[@class='text']/text()").extract_first()
author = quote.xpath("//*[@itemprop='author']/text()").extract_first()
tags = quote.xpath(".//*[@class='tag']/text()").extract();

item = {
'author_name':author,
'text':text,
'tags':tags
}
yield item
next_page_url = response.xpath("//*[@class='next']/a/@href").extract_first()
absolute_next_page_url = response.urljoin(next_page_url)
yield scrapy.Request(url=absolute_next_page_url,callback=self.parse)

但是 scrapy 只解析第一页。这段代码有什么问题。我从 YouTube 教程中复制了它。

请帮忙。

最佳答案

只是除了第一个请求之外的所有请求都被过滤为“异地”。这是因为您在 allowed_domains 值的末尾有这个额外的 /:

allowed_domains = ['quotes.toscrape.com/']
# REMOVE THIS SLASH^

关于python - Scrapy 分页不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47879059/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com