Fix : avoid exception when network is not stable
This commit is contained in:
parent
054c143e66
commit
9316b1e855
7
api.py
7
api.py
@ -136,12 +136,15 @@ class XiGuaLiveApi:
|
|||||||
:return:
|
:return:
|
||||||
"""
|
"""
|
||||||
if self.isLive:
|
if self.isLive:
|
||||||
|
try:
|
||||||
p = s.post("https://i.snssdk.com/videolive/room/enter?version_code=730"
|
p = s.post("https://i.snssdk.com/videolive/room/enter?version_code=730"
|
||||||
"&device_platform=android",
|
"&device_platform=android",
|
||||||
data="room_id={roomID}&version_code=730"
|
data="room_id={roomID}&version_code=730"
|
||||||
"&device_platform=android".format(roomID=self.roomID),
|
"&device_platform=android".format(roomID=self.roomID),
|
||||||
headers={"Content-Type":"application/x-www-form-urlencoded"})
|
headers={"Content-Type":"application/x-www-form-urlencoded"})
|
||||||
d = p.json()
|
d = p.json()
|
||||||
|
except:
|
||||||
|
return False
|
||||||
self.isValidRoom = d["base_resp"]["status_code"] == 0
|
self.isValidRoom = d["base_resp"]["status_code"] == 0
|
||||||
if d["base_resp"]["status_code"] != 0:
|
if d["base_resp"]["status_code"] != 0:
|
||||||
return False
|
return False
|
||||||
@ -263,6 +266,8 @@ class XiGuaLiveApi:
|
|||||||
self.onJoin(User(i))
|
self.onJoin(User(i))
|
||||||
elif i["common"]['method'] == "VideoLiveControlMessage":
|
elif i["common"]['method'] == "VideoLiveControlMessage":
|
||||||
print("消息:", "主播离开一小会")
|
print("消息:", "主播离开一小会")
|
||||||
|
# 这个消息代表主播下播了,直接更新房间信息
|
||||||
|
self.updRoomInfo()
|
||||||
elif i["common"]['method'] == "VideoLiveDiggMessage":
|
elif i["common"]['method'] == "VideoLiveDiggMessage":
|
||||||
self.onLike(User(i))
|
self.onLike(User(i))
|
||||||
else:
|
else:
|
||||||
@ -270,11 +275,13 @@ class XiGuaLiveApi:
|
|||||||
if self.lottery is None or self.lottery.ID == 0:
|
if self.lottery is None or self.lottery.ID == 0:
|
||||||
self.lottery = Lottery(i)
|
self.lottery = Lottery(i)
|
||||||
self._updRoomCount += 1
|
self._updRoomCount += 1
|
||||||
|
# 更新抽奖信息
|
||||||
if self.lottery is not None and self.lottery.ID != 0:
|
if self.lottery is not None and self.lottery.ID != 0:
|
||||||
self.lottery.update()
|
self.lottery.update()
|
||||||
if self.lottery.isFinished:
|
if self.lottery.isFinished:
|
||||||
self.onLottery(self.lottery)
|
self.onLottery(self.lottery)
|
||||||
self.lottery = None
|
self.lottery = None
|
||||||
|
# 2分钟自动更新下房间信息
|
||||||
if self._updRoomCount > 120 or len(d['data']) == 0:
|
if self._updRoomCount > 120 or len(d['data']) == 0:
|
||||||
self.updRoomInfo()
|
self.updRoomInfo()
|
||||||
self._updRoomCount = 0
|
self._updRoomCount = 0
|
||||||
|
Reference in New Issue
Block a user