我有一个“出现”的脚本在我们的测试环境中工作,因为缺乏可见性。但是,我们现在正在测试我们的预制环境,我们注意到以下问题...
脚本的基本功能是在主机Web前端执行HTTP / URL请求,并返回状态代码以及内容大小(即content-length
)。我无法解决问题,如何在将content-lenght
分配给变量之前对其进行检查。目前我有以下内容:
#... Code ...
try:
conn = urllib2.urlopen(line, timeout=1)
contentLen = conn.headers['content-length']
#... Code ...
但是对于缺少此内容长度的网址,如果缺少内容长度,则只会破坏脚本。我不想提出异常,而是在分配contentLen
之前检查它是否存在,然后如果它存在则分配实际的content-length
值,如果它不存在则分配值“NULL”。因此,可以将其打印为“Null
”。
提前致谢。
答案 0 :(得分:1)
conn.headers
是一个httplib.HTTPMessage
,它是rfc822.Message
的子类,因此有一个(有限的)dict
-like interface。您可以使用get
的2参数调用来提供默认值。
contentLen = conn.headers.get('content-length','NULL')