要测试一些使用urllib2
的代码,我想提出HTTPError
以确保正确处理。
HTTPError
有一个构造函数:
def __init__(self, url, code, msg, hdrs, fp):
我不知道要传递什么作为最后一个参数fp
。
你能帮助我举一个会引发HTTPError
例子的例子吗?
raise HTTPError('arg1','arg2','arg3','arg4',...
怎么做?
答案 0 :(得分:2)
通过fp=None
。
来自source code:
# 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)
fp
需要是类文件对象,因此如果您愿意,可以传递StringIO
对象。