gpt4 book ai didi

python - 捕获 python 中的异常/运行时错误

转载 作者:行者123 更新时间:2023-11-30 21:50:28 25 4
gpt4 key购买 nike

我有一个网络抓取 python 脚本,当您运行时,它会要求输入网址。我想要发生的是验证用户输入,例如。如果它是有效的网址或没有用户输入。我已经完成了 try except ,它们几乎可以工作,它显示我希望用户看到的消息,但它也返回 Traceback 调用,但我不希望这样。我只想显示我的自定义错误消息。有人可以帮助我实现这个吗?这是我的代码:

import sys, urllib, urllib2

try:
url= raw_input('Please input address: ')
webpage=urllib.urlopen(url)
print 'Web address is valid'
except:
print 'No input or wrong url format usage: http://wwww.domainname.com '

def wget(webpage):
print '[*] Fetching webpage...\n'
page = webpage.read()
return page
def main():
sys.argv.append(webpage)

if len(sys.argv) != 2:
print '[-] Usage: webpage_get URL'
return
print wget(sys.argv[1])

if __name__ == '__main__':
main()

最佳答案

您可以简单地执行以下操作:

try:
# ...
except Exception as e:
print("What you want to show")

编辑:“当遇到异常时如何阻止它执行?”

您可以像@sabujhassan提到的那样在wget()中使用try except,或者您可以在捕获异常时退出:

except Exception as e:
print("Exception caught!")
exit(1)

编辑2:“是否可以循环程序,例如,当没有用户输入时,只是不断要求用户输入网址?”是的,您可以简单地将其覆盖在无限 while 循环中,并在选择正确的值时中断。

while True:
try:
# Your logic ...
break
except:
print 'No input or wrong url format usage: http://wwww.domainname.com '
print 'Try again!'

关于python - 捕获 python 中的异常/运行时错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20499539/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com