上一篇文章讲了如何通过JavaScript获取明文的弹幕信息,本篇文章通过连接WebSocket的链接获取弹幕信息。
一、找到WebSocket的链接
通过抓包工具,将WebSocket的链接地址抓到,如下图所示:
二、使用Python构建请求
很容易理解,就是使用Python构造请求。Https协议我们使用的是requests库,而websocket使用Python的websocket库模拟请求。
具体实现过程本文就不过多赘述了。将websocket_url替换为你上面抓取到的URL地址即可。代码如下:
def on_message(ws, content):
print(f"收到消息: {content}")
def on_error(ws, error):
print("连接错误", error)
def on_close(ws, close_status_code, close_msg):
print("连接关闭")
def on_open(ws):
print("连接成功")
websocket_url = "",
ws_app = WebSocketApp(
url=websocket_url,
on_open=on_open,
on_message=on_message,
on_error=on_error,
on_close=on_close
)
ws_app.run_forever()
我们这样去运行这个py文件的时候,发现会出现以下消息:
这种情况可能是我们的一些参数没有携带,如:header,cookie。我们从网站中随便找一个header或者cookie 粘贴到代码里面然后再次运行:
这时我们会看到连接成功并且获取到了弹幕消息。但是这些数据都是二进制数据包,那么下一篇的话,我将带领大家去还原原始数据。