我的小脚本处理从url传递的几个参数
bright = int(urlparse.parse_qs(urlparse.urlparse(self.path).query).get('bright', None)[0])
loops = int(urlparse.parse_qs(urlparse.urlparse(self.path).query).get('loops', None)[0])
speed = float(urlparse.parse_qs(urlparse.urlparse(self.path).query).get('speed', None)[0])/1000
但是,有些参数是可选的,有时例如“bright”由于不相关而不在url中传递。在这种情况下,我就会犯这个错误
bright = int(urlparse.parse_qs(urlparse.urlparse(self.path).query).get('bright', None)[0])
TypeError: 'NoneType' object has no attribute '__getitem__'
我能理解。。它试图解析一些不存在的东西。最好的办法是什么?有没有一种方法可以在尝试解析url中的参数之前先获取参数列表?你知道吗
嗯。。。为什么不直接遍历从
parse_qs()
获得的参数字典来查看url中的可用参数呢?你知道吗此外,您还可以使用
try/except
块捕获None事件并相应地执行操作。你知道吗相关问题 更多 >
编程相关推荐