好得很程序员自学网

<tfoot draggable='sEl'></tfoot>

详解python-bilibili出错的解决办法

在获取房间号之前我们先解决上篇文章遗留的bug,即输入的房间号不是数字和对应的房间号不存在而产生的问题。

roomId = input('请输入房间号:')while not roomId.isdigit():     
print("数字格式错误,请重新输入!")
     roomId = input('请输入房间号:')
roomUrl = 'http://live.bilibili测试数据/'+ str(roomId) 

效果图:

看效果图,房间号是空也需要重新输入,数字加字母的形式也需要重新输入,满足我们的需求呢,我们继续解决下一个bug。

输入的房间不存在(即网址不存在):

这个是属于程序异常处理方面,我们只需要找出该程序的报错原因即可。

重点看最后一句,urllib.error.HTTPError: HTTP Error 404: Not Found

网页404,没有找到网页。说明你输入的网页地址不存在。使用try-except来解决这个错误。

思路:

1、访问一个网址是并不知道它在不在

2、试着访问这个地址

3、出错则需要重新输入网址

4、重新输入网址需要从输入房间号开始

5、大循环是一开始到网址出错,小循环就是判断房间号

6、输入的网址存在,那么就需要跳出这个大循环了

代码:

while True:
     roomId = input('请输入房间号:')
     while not roomId.isdigit():
          print("数字格式错误,请重新输入!")
          roomId = input('请输入房间号:')
     roomUrl = 'http://live.bilibili测试数据/'+ str(roomId)

     try:
          webPage=urllib.request.urlopen(roomUrl)
          break
     except:
          print('出错啦!') 
except urllib.error.HTTPError as reason:          
print('网址出错啦!'+ str(reason)) 

效果图:

以上就是详解python - bilibili出错的解决办法的详细内容,更多请关注Gxl网其它相关文章!

查看更多关于详解python-bilibili出错的解决办法的详细内容...

  阅读:54次