Python 异常处理--raise函数用法

在Python中,要想引发异常,最简单的形式就是输入关键字raise,后跟要引发的异常的名称。异常名称标识出具体的类: Python异常处理是那些类的对象。执行raise语句时,Python会创建指定的异常类的一个对象。raise语句还可指定对异常对象进行初始化的参数。为此,请在异常类的名称后添加一个逗号以及指定的参数(或者由参数构成的一个元组)。

例如:在scrapy官网可以看到,scrapy异常处理的丢弃item中的DropItem()异常处理。

验证价格,同时丢弃没有价格的item

from scrapy.exceptions import DropItem

class PricePipeline(object):

    vat_factor = 1.15

    def process_item(self, item, spider):
        if item['price']:
            if item['price_excludes_vat']:
                item['price'] = item['price'] * self.vat_factor
            return item
        else:
            raise DropItem("Missing price in %s" % item)
对于对应的异常类,到scrapy的官网去观看。
http://scrapy-chs.readthedocs.io/zh_CN/0.24/topics/exceptions.html
posted @ 2017-02-15 17:08  你若精彩,蝴蝶自来  阅读(45105)  评论(0编辑  收藏  举报