接口调整,Win
This commit is contained in:
parent
cae988e0fe
commit
f971380b5f
@ -3,7 +3,9 @@ import "XiguaUser.proto";
|
||||
import "XiguaGift.proto";
|
||||
message Message {
|
||||
required CommonInfo commonInfo = 1;
|
||||
required bytes contents = 2;
|
||||
required bytes content2 = 2;
|
||||
required bytes content3 = 3;
|
||||
required bytes content4 = 4;
|
||||
optional bool isFinished = 9 [ default = false ];
|
||||
}
|
||||
// 样式
|
||||
|
23
WinMain.py
23
WinMain.py
@ -182,22 +182,27 @@ def warning(*args):
|
||||
if __name__ == "__main__":
|
||||
name = "永恒de草薙"
|
||||
resetColor()
|
||||
print("西瓜直播弹幕助手 by JerryYan")
|
||||
print("西瓜直播礼物助手 by JerryYan")
|
||||
print("接口版本8.1.6")
|
||||
if len(sys.argv) > 1:
|
||||
name = sys.argv[1]
|
||||
if len(sys.argv) > 2:
|
||||
SHOW_ALL = sys.argv[2] == "a"
|
||||
else:
|
||||
name = readInput("请输入主播用户名,默认为", name, 3)
|
||||
print("搜索【", name, "】", end="\t", flush=True)
|
||||
api = WinMain(name)
|
||||
while not api.isValidUser:
|
||||
set_cmd_text_color(FOREGROUND_RED)
|
||||
print("未找到对应房间或未开播,等待1分钟后重试")
|
||||
resetColor()
|
||||
time.sleep(60)
|
||||
api.updRoomInfo()
|
||||
print("进入", api.broadcaster, "的直播间")
|
||||
if not api.isValidUser:
|
||||
input("用户不存在")
|
||||
sys.exit()
|
||||
print("OK")
|
||||
print(api.broadcaster.__repr__())
|
||||
print("更新房间信息,请稍后", end="\t", flush=True)
|
||||
os.system("title {}".format(api.getTitle()))
|
||||
if api.updRoomInfo(True):
|
||||
print("OK")
|
||||
else:
|
||||
print("FAIL")
|
||||
print("=" * 30)
|
||||
while True:
|
||||
if api.isLive:
|
||||
@ -215,4 +220,4 @@ if __name__ == "__main__":
|
||||
print("主播未开播,等待1分钟后重试")
|
||||
resetColor()
|
||||
time.sleep(60)
|
||||
api.updRoomInfo()
|
||||
api.updRoomInfo(True)
|
||||
|
@ -20,7 +20,7 @@ DESCRIPTOR = _descriptor.FileDescriptor(
|
||||
package='',
|
||||
syntax='proto2',
|
||||
serialized_options=None,
|
||||
serialized_pb=b'\n\x11XiguaCommon.proto\x1a\x0fXiguaUser.proto\x1a\x0fXiguaGift.proto\"W\n\x07Message\x12\x1f\n\ncommonInfo\x18\x01 \x02(\x0b\x32\x0b.CommonInfo\x12\x10\n\x08\x63ontents\x18\x02 \x02(\x0c\x12\x19\n\nisFinished\x18\t \x01(\x08:\x05\x66\x61lse\"*\n\x05Style\x12\r\n\x05\x63olor\x18\x01 \x01(\t\x12\x12\n\nfontWeight\x18\x04 \x01(\x05\"q\n\x06Params\x12\x0c\n\x04type\x18\x01 \x02(\x05\x12\x15\n\x05style\x18\x02 \x01(\x0b\x32\x06.Style\x12\x0e\n\x06string\x18\x0b \x01(\t\x12\x18\n\x05users\x18\x15 \x01(\x0b\x32\t.UserPack\x12\x18\n\x05gifts\x18\x16 \x01(\x0b\x32\t.GiftPack\"_\n\x0b\x44isplayText\x12\x0e\n\x06method\x18\x01 \x02(\t\x12\x0e\n\x06\x66ormat\x18\x02 \x02(\t\x12\x17\n\x07\x62gStyle\x18\x03 \x01(\x0b\x32\x06.Style\x12\x17\n\x06params\x18\x04 \x02(\x0b\x32\x07.Params\"u\n\nCommonInfo\x12\x0e\n\x06method\x18\x01 \x01(\t\x12\x0e\n\x06msg_id\x18\x02 \x01(\x05\x12\x0f\n\x07room_id\x18\x03 \x01(\x05\x12\x13\n\x0b\x63reate_time\x18\x04 \x01(\x05\x12!\n\x0b\x64isplayText\x18\x08 \x01(\x0b\x32\x0c.DisplayText'
|
||||
serialized_pb=b'\n\x11XiguaCommon.proto\x1a\x0fXiguaUser.proto\x1a\x0fXiguaGift.proto\"{\n\x07Message\x12\x1f\n\ncommonInfo\x18\x01 \x02(\x0b\x32\x0b.CommonInfo\x12\x10\n\x08\x63ontent2\x18\x02 \x02(\x0c\x12\x10\n\x08\x63ontent3\x18\x03 \x02(\x0c\x12\x10\n\x08\x63ontent4\x18\x04 \x02(\x0c\x12\x19\n\nisFinished\x18\t \x01(\x08:\x05\x66\x61lse\"*\n\x05Style\x12\r\n\x05\x63olor\x18\x01 \x01(\t\x12\x12\n\nfontWeight\x18\x04 \x01(\x05\"q\n\x06Params\x12\x0c\n\x04type\x18\x01 \x02(\x05\x12\x15\n\x05style\x18\x02 \x01(\x0b\x32\x06.Style\x12\x0e\n\x06string\x18\x0b \x01(\t\x12\x18\n\x05users\x18\x15 \x01(\x0b\x32\t.UserPack\x12\x18\n\x05gifts\x18\x16 \x01(\x0b\x32\t.GiftPack\"_\n\x0b\x44isplayText\x12\x0e\n\x06method\x18\x01 \x02(\t\x12\x0e\n\x06\x66ormat\x18\x02 \x02(\t\x12\x17\n\x07\x62gStyle\x18\x03 \x01(\x0b\x32\x06.Style\x12\x17\n\x06params\x18\x04 \x02(\x0b\x32\x07.Params\"u\n\nCommonInfo\x12\x0e\n\x06method\x18\x01 \x01(\t\x12\x0e\n\x06msg_id\x18\x02 \x01(\x05\x12\x0f\n\x07room_id\x18\x03 \x01(\x05\x12\x13\n\x0b\x63reate_time\x18\x04 \x01(\x05\x12!\n\x0b\x64isplayText\x18\x08 \x01(\x0b\x32\x0c.DisplayText'
|
||||
,
|
||||
dependencies=[XiguaUser__pb2.DESCRIPTOR,XiguaGift__pb2.DESCRIPTOR,])
|
||||
|
||||
@ -42,14 +42,28 @@ _MESSAGE = _descriptor.Descriptor(
|
||||
is_extension=False, extension_scope=None,
|
||||
serialized_options=None, file=DESCRIPTOR),
|
||||
_descriptor.FieldDescriptor(
|
||||
name='contents', full_name='Message.contents', index=1,
|
||||
name='content2', full_name='Message.content2', index=1,
|
||||
number=2, type=12, cpp_type=9, label=2,
|
||||
has_default_value=False, default_value=b"",
|
||||
message_type=None, enum_type=None, containing_type=None,
|
||||
is_extension=False, extension_scope=None,
|
||||
serialized_options=None, file=DESCRIPTOR),
|
||||
_descriptor.FieldDescriptor(
|
||||
name='isFinished', full_name='Message.isFinished', index=2,
|
||||
name='content3', full_name='Message.content3', index=2,
|
||||
number=3, type=12, cpp_type=9, label=2,
|
||||
has_default_value=False, default_value=b"",
|
||||
message_type=None, enum_type=None, containing_type=None,
|
||||
is_extension=False, extension_scope=None,
|
||||
serialized_options=None, file=DESCRIPTOR),
|
||||
_descriptor.FieldDescriptor(
|
||||
name='content4', full_name='Message.content4', index=3,
|
||||
number=4, type=12, cpp_type=9, label=2,
|
||||
has_default_value=False, default_value=b"",
|
||||
message_type=None, enum_type=None, containing_type=None,
|
||||
is_extension=False, extension_scope=None,
|
||||
serialized_options=None, file=DESCRIPTOR),
|
||||
_descriptor.FieldDescriptor(
|
||||
name='isFinished', full_name='Message.isFinished', index=4,
|
||||
number=9, type=8, cpp_type=7, label=1,
|
||||
has_default_value=True, default_value=False,
|
||||
message_type=None, enum_type=None, containing_type=None,
|
||||
@ -68,7 +82,7 @@ _MESSAGE = _descriptor.Descriptor(
|
||||
oneofs=[
|
||||
],
|
||||
serialized_start=55,
|
||||
serialized_end=142,
|
||||
serialized_end=178,
|
||||
)
|
||||
|
||||
|
||||
@ -105,8 +119,8 @@ _STYLE = _descriptor.Descriptor(
|
||||
extension_ranges=[],
|
||||
oneofs=[
|
||||
],
|
||||
serialized_start=144,
|
||||
serialized_end=186,
|
||||
serialized_start=180,
|
||||
serialized_end=222,
|
||||
)
|
||||
|
||||
|
||||
@ -164,8 +178,8 @@ _PARAMS = _descriptor.Descriptor(
|
||||
extension_ranges=[],
|
||||
oneofs=[
|
||||
],
|
||||
serialized_start=188,
|
||||
serialized_end=301,
|
||||
serialized_start=224,
|
||||
serialized_end=337,
|
||||
)
|
||||
|
||||
|
||||
@ -216,8 +230,8 @@ _DISPLAYTEXT = _descriptor.Descriptor(
|
||||
extension_ranges=[],
|
||||
oneofs=[
|
||||
],
|
||||
serialized_start=303,
|
||||
serialized_end=398,
|
||||
serialized_start=339,
|
||||
serialized_end=434,
|
||||
)
|
||||
|
||||
|
||||
@ -275,8 +289,8 @@ _COMMONINFO = _descriptor.Descriptor(
|
||||
extension_ranges=[],
|
||||
oneofs=[
|
||||
],
|
||||
serialized_start=400,
|
||||
serialized_end=517,
|
||||
serialized_start=436,
|
||||
serialized_end=553,
|
||||
)
|
||||
|
||||
_MESSAGE.fields_by_name['commonInfo'].message_type = _COMMONINFO
|
||||
|
15
api.py
15
api.py
@ -12,6 +12,7 @@ import requests
|
||||
import time
|
||||
from datetime import datetime, timedelta
|
||||
from Xigua_pb2 import XiguaLive
|
||||
from XiguaUser_pb2 import User as UserPb
|
||||
|
||||
DEBUG = False
|
||||
COMMON_GET_PARAM = (
|
||||
@ -359,8 +360,19 @@ class XiGuaLiveApi:
|
||||
_gift.user = _user
|
||||
_gift.backupName = _each.message.commonInfo.displayText.params.gifts.gift.name
|
||||
self.onPresentEnd(_gift)
|
||||
elif _each.method == "WebcastFansclubMessage":
|
||||
continue
|
||||
_userRawData = _each.message.content4
|
||||
_userPb = UserPb()
|
||||
_userPb.ParseFromString(_userRawData)
|
||||
_user = User()
|
||||
_user.id = _userPb.id
|
||||
_user.name = _userPb.nickname
|
||||
self.onJoin(_user)
|
||||
print(_each.message.content2)
|
||||
print(_each.message.content3)
|
||||
else:
|
||||
print(_each.message.contents)
|
||||
pass
|
||||
# 更新抽奖信息
|
||||
if self.lottery is not None and self.lottery.ID != 0:
|
||||
self.lottery.update()
|
||||
@ -375,6 +387,7 @@ if __name__ == "__main__":
|
||||
DEBUG = True
|
||||
name = sys.argv[1]
|
||||
print("西瓜直播弹幕助手 by JerryYan")
|
||||
print("接口版本8.1.6")
|
||||
print("搜索【", name, "】", end="\t", flush=True)
|
||||
api = XiGuaLiveApi(name)
|
||||
if not api.isValidUser:
|
||||
|
Reference in New Issue
Block a user