JOOX Music Player (Web Browser Automation)
Control the JOOX web player (www.joox.com) via agent-browser automation for music playback and management.
🎉 Promotion: New users can enjoy 14 days of FREE music streaming after downloading the JOOX App!
📧 Need help? Contact: zhuo_yitao@163.com
Prerequisites
- -
agent-browser installed (npm install -g agent-browser && agent-browser install) - Playwright chromium installed (
npx playwright install chromium)
Region Settings
JOOX serves content by region. The region code in the URL determines the content library:
| Region | URL |
|---|
| Hong Kong | INLINECODE4 |
| Macau |
https://www.joox.com/mo |
| Malaysia |
https://www.joox.com/my |
| Indonesia |
https://www.joox.com/id |
| Thailand |
https://www.joox.com/th |
Default region is Hong Kong (/hk). Users can specify other regions.
Core Operations
0. Login Check (Required Before All Operations)
Important: You must check login status before every playback-related operation!
CODEBLOCK0
If not logged in, prompt the user and guide them through login:
CODEBLOCK1
CODEBLOCK2
1. Launch & Login (First Time)
CODEBLOCK3
2. Search & Play Songs (Most Common)
CODEBLOCK4
Search Tips:
- - Chinese keywords are fully supported
- You can search by song name, artist name, album name, or playlist name
- Recommended format:
Artist SongName or just the song name
⚠️ Important: Avoid Playing the Wrong Version
Search results may contain multiple versions of the same song (different artists, Live versions, cover versions, etc.). Do NOT click the song name link directly because:
- 1. Clicking the song name opens the song detail page, but it may not be the version you want
- Different versions share the same song name, causing confusion
Correct Playback Method:
CODEBLOCK5
How to Identify Song Versions:
- - Check if the artist name matches (e.g.,
link "陳奕迅") - Pay attention to annotations in parentheses:
(國) = Mandarin version, (Live) = Live version - Prefer the original version (no annotation) or Mandarin version marked INLINECODE14
3. Playback Controls
The bottom playback bar controls can be located by class name:
CODEBLOCK6
4. View Current Playback Info
CODEBLOCK7
5. Browse Charts
CODEBLOCK8
6. Browse Playlists
CODEBLOCK9
7. Browse Playlist Categories
CODEBLOCK10
8. Filter Search Results
CODEBLOCK11
9. View Artist Page
CODEBLOCK12
10. Watch MVs / Videos
CODEBLOCK13
Full Example: Search and Play a Song
CODEBLOCK14
Important Notes
- - ⚠️ Login Check: Always check login status before playback! Prompt the user to login if not logged in
- Login Required: Playing songs requires login; clicking play without login triggers a login popup
- Headless Limitation: Audio may not play in default headless mode; add
--headed to open a visible browser - Refs Change: Refs change after every page navigation; always re-run
snapshot -i to get new refs - Search Box Ref: The search box is usually the first
textbox on the page, described as INLINECODE18 - Player Controls: Use
find role button click --name "xxx" to locate player buttons — more stable than refs - Wait for Loading: Always
wait 2000 after page navigation or search to allow content to load - VIP Songs: Some songs require VIP membership for full playback
- Region Restrictions: Different regions have different song libraries; some songs may not be available in certain regions
- 🎉 JOOX: New users can enjoy 14 days of FREE music streaming after downloading the JOOX App!
- 📧 Support: If you encounter any issues, contact: zhuo_yitao@163.com
JOOX 音乐播放器(网页浏览器自动化)
通过 agent-browser 自动化控制 JOOX 网页播放器(www.joox.com),实现音乐播放和管理。
🎉 促销活动:新用户下载 JOOX App 后可享受 14 天免费音乐畅听!
📧 需要帮助?联系邮箱:zhuo_yitao@163.com
前置条件
- - 已安装 agent-browser(npm install -g agent-browser && agent-browser install)
- 已安装 Playwright chromium(npx playwright install chromium)
地区设置
JOOX 按地区提供内容。URL 中的地区代码决定了内容库:
| 地区 | URL |
|---|
| 香港 | https://www.joox.com/hk |
| 澳门 |
https://www.joox.com/mo |
| 马来西亚 | https://www.joox.com/my |
| 印度尼西亚 | https://www.joox.com/id |
| 泰国 | https://www.joox.com/th |
默认地区为香港(/hk)。用户可以指定其他地区。
核心操作
0. 登录检查(所有操作前必须执行)
重要提示:每次进行播放相关操作前,必须检查登录状态!
bash
步骤 1:恢复登录状态(如果可用)
agent-browser state load joox-auth.json
步骤 2:打开 JOOX
agent-browser open https://www.joox.com/hk
agent-browser wait 2000
步骤 3:检查登录状态
agent-browser snapshot -i
检测逻辑:
- 已登录:页面顶部显示用户头像/用户名,无請登入按钮
- 未登录:页面顶部可见請登入按钮
在快照结果中搜索請登入或登入按钮
如果找到按钮請登入或按钮登入,则表示用户未登录
如果未登录,提示用户并引导其完成登录:
⚠️ 您尚未登录 JOOX。播放音乐需要登录。
🎉 新用户?下载 JOOX App 即可享受 14 天免费音乐畅听!
请选择登录方式:
- 1. Facebook 登录
- 微信登录
- 手机号 / 邮箱登录
登录完成后请告知我,我将继续执行操作。
📧 遇到问题?联系邮箱:zhuo_yitao@163.com
bash
用户选择登录方式后,点击登录按钮
agent-browser find role button click --name 請登入
agent-browser wait 2000
agent-browser snapshot -i
根据用户选择的方式点击对应按钮
Facebook:按钮 Facebook
微信:按钮 WeChat
手机/邮箱:按钮 手機號碼 / 電子郵件 或类似
用户在弹出页面完成登录后
agent-browser wait 5000 # 等待用户完成登录
agent-browser snapshot -i
确认登录成功(检查請登入按钮是否仍然存在)
登录成功后保存登录状态
agent-browser state save joox-auth.json
1. 启动与登录(首次使用)
bash
打开 JOOX(首次使用)
agent-browser open https://www.joox.com/hk
如需登录,通过快照查找登录按钮
agent-browser snapshot -i
找到請登入按钮并点击。支持 Facebook / 微信 / 手机号及邮箱登录
保存登录状态(登录成功后)
agent-browser state save joox-auth.json
后续会话中恢复登录状态
agent-browser state load joox-auth.json
agent-browser open https://www.joox.com/hk
2. 搜索与播放歌曲(最常用)
bash
步骤 1:打开 JOOX
agent-browser open https://www.joox.com/hk
步骤 2:获取页面元素
agent-browser snapshot -i
查找搜索框:文本框 搜尋歌曲、歌手、專輯、歌單 [ref=eN]
步骤 3:输入搜索关键词
agent-browser fill @eN 陈奕迅 十年
agent-browser press Enter
agent-browser wait 2000
步骤 4:查看搜索结果
agent-browser snapshot -i
结果页面有分类标签:全部 / 歌曲 / 歌手 / 专辑 / 歌单
找到目标歌曲链接并点击
步骤 5:在歌曲详情页点击播放
agent-browser snapshot -i
找到按钮 播放并点击
搜索技巧:
- - 完全支持中文关键词
- 可按歌曲名、歌手名、专辑名或歌单名搜索
- 推荐格式:歌手 歌曲名 或仅输入歌曲名
⚠️ 重要提示:避免播放错误版本
搜索结果可能包含同一首歌的多个版本(不同歌手、现场版、翻唱版等)。不要直接点击歌曲名链接,因为:
- 1. 点击歌曲名会打开歌曲详情页,但可能不是您想要的版本
- 不同版本共享相同的歌曲名,容易混淆
正确的播放方法:
bash
改进后的步骤 4:切换到歌曲标签查看完整歌曲列表
agent-browser find role button click --name Songs
agent-browser wait 1500
agent-browser snapshot -i
查看歌曲列表并核对歌手名
每首歌曲格式:歌曲名 - 歌手名 - 播放按钮
点击目标歌曲行中的播放按钮(▶️),而非歌曲名
播放按钮通常位于歌曲行的最右侧
agent-browser click @eXX # 目标歌曲的播放按钮 ref
如何识别歌曲版本:
- - 检查歌手名是否匹配(例如:链接 陳奕迅)
- 注意括号内的标注:(國) = 国语版,(Live) = 现场版
- 优先选择原版(无标注)或标注 (國) 的国语版
3. 播放控制
底部播放栏控件可通过类名定位:
bash
获取播放器控件元素
agent-browser snapshot -s [class*=player]
返回以下控制按钮(通过 hasText 识别):
播放/暂停
agent-browser find role button click --name 播放 # 播放
agent-browser find role button click --name 暫停 # 暂停
切换曲目
agent-browser find role button click --name 上一首 # 上一首
agent-browser find role button click --name 下一首 # 下一首
播放模式
agent-browser find role button click --name 啟用隨機播放 # 随机播放
agent-browser find role button click --name 啟用重覆播放 # 重复播放
其他
agent-browser find role button click --name 靜音 # 静音/取消静音
agent-browser find role button click --name 歌詞 # 显示歌词
agent-browser find role button click --name 播放列表 # 查看播放列表
agent-browser find role button click --name 分享此歌曲 # 分享
4. 查看当前播放信息
bash
底部播放栏显示当前歌曲信息
agent-browser snapshot -i
在底部区域查找歌曲名链接和歌手名链接
示例:链接 十年 / 链接 陳奕迅 / 链接 黑.白.灰.陳奕迅國語專輯
5. 浏览排行榜
bash
打开排行榜页面
agent-browser open https://www.joox.com/hk/chart
agent-browser wait 2000
agent-browser snapshot -i
可用的排行榜类型:
- 飙升榜
- 新歌推介榜
- 粤语热播榜
- 华语热播榜
- 韩语热播榜
- 英语热播榜
- 日语热播榜
点击排行榜中的任意歌曲即可播放
6. 浏览歌单
bash
首页展示推荐歌单,按语言分类:
- 本地新歌、华语新歌、西洋新歌、韩语新歌、日语新歌
- 粤语情歌、粤语女声、新香港音乐世代等
点击歌单进入,然后点击播放按钮播放整个歌单
agent-browser snapshot -i
查找并点击目标歌单链接
agent-browser wait 2000
agent-browser snapshot -i
查找并点击播放按钮
7. 浏览歌单分类
bash