Scrapy NameError:name' filename'未定义

时间:2016-07-27 15:24:28

标签: python web-scraping scrapy

我对Python完全陌生,我正在做一个关于网络抓取的夏季独立实用项目,我尝试使用Scrapy。到目前为止,我已经使用http://doc.scrapy.org/en/1.1/intro/tutorial.html开始,但由于教程蜘蛛没有按预期工作,我必须即兴发挥。操作系统是win7

我尝试复制教程代码并对其进行即兴创作导致此错误:

File ..\spiders\dmoz_spider.py", line 16 in DmozSpider with open(filename, 
'wb') as f:
NameError: name 'filename' is not defined

代码是:

import scrapy

class DmozSpider(scrapy.Spider):
    name = "turo"
    allowed_domains = ["turotarjoo.com"]
    start_urls = [
        "http://turotarjoo.com/siipiravintola/",
        "http://turotarjoo.com/info/"
    ]

def parse(self, response):
    filename = None
    filename = response.url.split("/")[-1] + '.html'
    with open(filename, 'wb') as f:
        f.write(response.body)

感谢您的帮助,如果我的第一个问题难以阅读,请对不起。如果你有任何关于启动python程序员或网络抓取的技巧,请告诉你。

1 个答案:

答案 0 :(得分:-1)

import scrapy
class DmozSpider(scrapy.Spider):
    name = "turo"
    allowed_domains = ["turotarjoo.com"]
    start_urls = [
        "http://turotarjoo.com/siipiravintola/",
        "http://turotarjoo.com/info/"
    ]

    def parse(self, response):
        filename = response.url.split("/")[-1] + '.html'
        with open(filename, 'wb') as f:
            f.write(response.body)

我只修复了缩进,似乎工作正常。你能试试这段代码吗?