我在python代码中有一行代码:
req = urllib.request.urlopen(path + "robots.txt", data=None)
但是如果不存在website.com/robots.txt,这似乎是错误的。如果这不起作用,我如何添加一个只将req设置为空的错误检查条件?
答案 0 :(得分:2)
这是try - except
块的一个很好的用例。
from urllib.request import urlopen
from urllib.error import URLError, HTTPError
try:
req = urlopen(path + "robots.txt", data=None)
except HTTPError as e:
# do something
print('Error code: ', e.code)
except URLError as e:
# do something (set req to blank)
print('Reason: ', e.reason)
我不确定你的意思是空白,但你可以在except块中将它设置为你想要的任何内容,具体取决于错误是什么。在你的情况下,我相信你会得到一个URLError,在这种情况下你可以做req = None
(或任何你想要的)。