首页 文章

scrapy web crawler教程中的错误

提问于
浏览
3

我正在做scrapy官方网站上给出的这个简单的scrapy爬虫教程,但是遇到了一些错误 . 我第一次做这件事这么完全不知道这一切 . 我需要在我的应用程序中实现网络爬虫,我发现scrapy来完成我的需求,所以从教程开始,结束我在下面粘贴的错误 . 任何人都可以解释一下代码有什么问题吗?

这是我的克拉维尔代码

from scrapy.spider import Spider

class DmozSpider(Spider):

    name="dmoz"

    allowed_domains = ["dmoz.org"]

    start_urls = [
        "http://www.dmoz.org/Computers/Programming/Languages/Python/Books/",
        "http://www.dmoz.org/Computers/Programming/Languages/Python/Resources/"
    ]

    def parse(self, response):

   filename = response.url.split("/")[-2]

   open(filename, 'wb').write(response.body)

这是我正在犯的错误

2014-02-04 10:45:51 0530 [scrapy] DEBUG:网络服务收听0.0.0.0:6080 2014-02-04 10:45:51 0530 [dmoz] DEBUG:Crawled(200)http:// www .dmoz.org / Computers / Programming / Languages / Python / Resources />(referer:None)

错误:蜘蛛错误处理http://www.dmoz.org/Computers/Programming/Languages/Python/Resources/> Traceback(最近一次调用最后一次):文件“/usr/lib/python2.7/dist-packages/twisted /internet/base.py“,第1178行,在mainLoop self.runUntilCurrent()文件”/usr/lib/python2.7/dist-packages/twisted/internet/base.py“,第800行,在runUntilCurrent call.func中(* call.args,** call.kw)文件“/usr/lib/python2.7/dist-packages/twisted/internet/defer.py”,第362行,在回调中self._startRunCallbacks(result)文件“/ usr / lib / python2.7 / dist-packages / twisted / internet / defer.py“,第458行,在_startRunCallbacks self._runCallbacks()--- ---文件”/usr/lib/python2.7/dist- packages / twisted / internet / defer.py“,第545行,在_runCallbacks中current.result = callback(current.result,* args,** kw)File”/usr/local/lib/python2.7/dist-packages/ scrapy / spider.py“,第56行,在解析时引发NotImplementedError exceptions.NotImplementedError:

1 回答

  • 3

    这个错误意味着你没有在你的蜘蛛中实现 parse 函数,另一方面根据你看来发布的代码,导致我认为你有一个缩进问题导致代码相信 parse 函数不是一个部分DmozSpider类

相关问题