如何引发 HTTPError

Nik*_*ntz 5 python urllib2

为了测试一些使用 的代码urllib2,我想提出一个HTTPError以确保它被正确处理。

HTTPError有一个构造函数:

def __init__(self, url, code, msg, hdrs, fp):
Run Code Online (Sandbox Code Playgroud)

我不知道要传递什么作为最后一个参数fp

你能帮我举一个例子来提出一个HTTPError例子 吗raise HTTPError('arg1','arg2','arg3','arg4',...

如何做呢?

Pet*_*ood 5

经过fp=None

源代码来看:

# The addinfourl classes depend on fp being a valid file
# object.  In some cases, the HTTPError may not have a valid
# file object.  If this happens, the simplest workaround is to
# not initialize the base classes.
if fp is not None:
    self.__super_init(fp, hdrs, url, code)
Run Code Online (Sandbox Code Playgroud)

fp需要是一个类似文件的对象,因此您可以根据StringIO需要传递一个对象。