抖音弹幕游戏开发之第4集:第一个WebSocket连接·优雅草云桧·卓伊凡

《抖音弹幕游戏开发专栏》是优雅草建立的专栏,由优雅草资深开发工程师云桂提供实战教学配对发布有对应的视频教程,以下内容为技术文稿,卓伊凡辅助。

抖音弹幕游戏开发之第4集:第一个WebSocket连接·优雅草云桧·卓伊凡

第4集:第一个WebSocket连接

创建main.py文件

在项目文件夹中创建 main.py 文件。

理解回调函数

回调函数就是"当某件事发生时,自动执行的函数"。

WebSocket常用的回调函数:

  • on_open - 连接成功时调用
  • on_message - 收到消息时调用
  • on_close - 连接关闭时调用
  • on_error - 发生错误时调用

完整代码

复制代码
import websocket

def on_open(ws):
    print("WebSocket连接成功!")

def on_close(ws, close_status_code, close_msg):
    print("WebSocket连接关闭")

def on_error(ws, error):
    print(f"发生错误: {error}")

# 创建WebSocket连接
ws = websocket.WebSocketApp(
    "ws://localhost:12011",
    on_open=on_open,
    on_close=on_close,
    on_error=on_error
)

ws.run_forever()

代码解析

导入库

复制代码
import websocket

定义回调函数

复制代码
def on_open(ws):
    print("WebSocket连接成功!")
  • def - 定义函数的关键字
  • ws - WebSocket连接对象参数
  • print - 打印输出

创建连接

复制代码
ws = websocket.WebSocketApp(
    "ws://localhost:12011",  # 服务器地址
    on_open=on_open,         # 传递函数名,不加括号
    on_close=on_close,
    on_error=on_error
)

启动连接

复制代码
ws.run_forever()  # 保持运行,持续监听

测试连接

前提:必须先启动"弹幕工具"

复制代码
python main.py

成功输出:

复制代码
WebSocket连接成功!

Ctrl+C 停止程序。

常见问题

|-------|-----------|---------|
| 问题 | 原因 | 解决方法 |
| 连接不上 | 弹幕工具未启动 | 先启动工具 |
| 端口被占用 | 12011端口冲突 | 检查端口 |
| 语法错误 | 代码有误 | 检查缩进和标点 |
| 防火墙阻止 | 网络限制 | 添加防火墙例外 |

本集总结

  • ✅ 创建main.py文件
  • ✅ 学习回调函数概念
  • ✅ 编写三个回调函数
  • ✅ 创建并测试WebSocket连接

下一集:接收第一条弹幕消息

相关推荐
科技苑3 小时前
Python简单网络爬虫教程
爬虫·python
Patrick在香港6 小时前
Claude Prompt 香港场景:公文里「今日」落在 6 个日历日上,「翌日」锚错了 5 天
python·自然语言处理·正则表达式·claude·数据清洗
YsyaaabB7 小时前
Python 数值分析
python
阿洛学长7 小时前
计算机二级 Python 基本操作题(15 分)真题笔记(0101 ~ 1903 全套)
python·pycharm
君顾17 小时前
上海24小时自助健身房系统开发实战指南:从架构设计到落地部署
java·开发语言·健身房
weixin199701080167 小时前
[特殊字符]️《二手ERP对接电商平台的总体方案:统一数据模型 + 事件驱动 + 灰度上线6原则》(附Python源码)
大数据·python
香菜TTT7 小时前
大模型上下文协议(MCP):AI 应用的“USB-C”接口技术
开发语言·人工智能·经验分享
aramae8 小时前
模拟实现strlen()函数 (C语言)
c语言·开发语言·后端
滚雪球~8 小时前
量化交易 防止Windows电脑自动更新并重启
python·量化
jimy19 小时前
readelf 查看“派生类”的vtable符号
开发语言·c++