找回密码
 立即注册

扫一扫,访问微社区

QQ登录

只需一步,快速开始

查看: 1737|回复: 2

[求助] [新人求助] 关于 scrapy 项目中 scrapy.Request 没有回调的问题

7

主题

12

帖子

12

积分

贫民

积分
12
小小白啊 发表于 2019-1-10 12:01:58 | 显示全部楼层 |阅读模式
import scrapy

from Demo.items import DemoItem


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

def parse(self, resp**e):
quotes = resp**e.css('.quote')
for quote in quotes:
item = DemoItem()
text = quote.css('.text::text').extract_first()
author = quote.css('.author::text').extract_first()
tags = quote.css('.tags .tag::text').extract()
item['text'] = text
item['author'] = author
item['tags'] = tags
yield item


next = resp**e.css('.pager .next a::attr("href")').extract_first()
url = resp**e.urljoin(next)
if next:
yield scrapy.Request(url=url,callback=self.parse)
回复

使用道具 举报

7

主题

12

帖子

12

积分

贫民

积分
12
小小白啊  楼主| 发表于 2019-1-10 12:48:55 | 显示全部楼层
按道理来说应该会全部10页打印出来,但是这里只打印了一页,求大佬帮忙看一下
next 打印出来是 '/page/2/'
url 是'http://quotes.toscrape.com/page/2/'
回复 支持 反对

使用道具 举报

7

主题

12

帖子

12

积分

贫民

积分
12
小小白啊  楼主| 发表于 2019-1-10 13:01:51 | 显示全部楼层
已解决,修改代码为yield scrapy.http.Request(url, callback=self.parse, dont_filter=True)
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

快速回复 返回顶部 返回列表