首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >擦伤程序不返回输出

擦伤程序不返回输出
EN

Stack Overflow用户
提问于 2022-10-17 21:14:50
回答 1查看 42关注 0票数 1

我对Python很陌生,并且尝试使用scrapy来构建一个web刮刀。我遵循了以下URL中的教程:https://doc.scrapy.org/en/latest/intro/tutorial.html,就像教程一样,在中运行程序之后,我检查了我的当前文件目录,但是找不到任何HTML。

是做错了什么还是安装错了?

以下是代码

代码语言:javascript
运行
复制
import scrapy
class QuotesSpider(scrapy.Spider):
    name ="quotes"

    def start_requests(self):
        urls =[
            'https://quotes.toscrape.com/page/1/'
            'https://quotes.toscrape.com/page/2/'
        ]
        for url in urls:
            yield scrapy.Request(url=url, callback=self.parse)

    def parse(self, response):
        page = response.url.split("/")[-2]
        filename = f'quotes-{page}.html'
        with open(filename, 'wb') as f:
            f.write(response.body)
        self.log(f'Saved file {filename}') 
EN

回答 1

Stack Overflow用户

发布于 2022-10-18 02:30:57

也许您自己键入了代码,而不是复制教程中的代码。您忽略了url后面的逗号,这会导致代码出现问题。

解决办法:

将代码的以下部分放入

代码语言:javascript
运行
复制
        urls = [
            'https://quotes.toscrape.com/page/1/'
            'https://quotes.toscrape.com/page/2/'
        ]

代之以:

代码语言:javascript
运行
复制
        urls = [
            'https://quotes.toscrape.com/page/1/',
            'https://quotes.toscrape.com/page/2/'
        ]

注:在需要url后用逗号分隔。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/74103306

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档