刚才想直接通过 audio 标签的 src 直接下载音频资源 然后发现 咪咕音乐网页版播放音乐的时候,谷歌浏览器的 dom 结构里并没有生成 audio 标签 也没有插入 flash 播放器,所以很疑惑,有大神知道这种情况下它如何完成播放音乐的操作的吗???
1
gIrl1990 2019-08-19 19:21:10 +08:00
哎,现在网站源码是越来越难审查了!
|
2
txwd 2019-08-19 19:52:27 +08:00
至于怎么播放的不清楚,没搞过这方面的,可能播放并不需要 audio 标签或暂时没找到?但可以看到音乐地址是通过 Get 返回的,直接是.mp3 。
|
3
santom 2019-08-19 19:58:49 +08:00
去看了下 ,真的很奇怪 真没有 。。。
不过发现了个可疑的文件 ![image.png]( https://i.loli.net/2019/08/19/hE9OaFiWG6tcrld.png) 里面有这么一段 应该是个库吧 不知道是不是这有什么骚操作? ```javascript /** @license * * SoundManager 2: JavaScript Sound for the Web * ---------------------------------------------- * http://schillmania.com/projects/soundmanager2/ * * Copyright (c) 2007, Scott Schiller. All rights reserved. * Code provided under the BSD License: * http://schillmania.com/projects/soundmanager2/license.txt * * V2.97a.20170601 */ /** @license * * SoundManager 2: JavaScript Sound for the Web * ---------------------------------------------- * http://schillmania.com/projects/soundmanager2/ * * Copyright (c) 2007, Scott Schiller. All rights reserved. * Code provided under the BSD License: * http://schillmania.com/projects/soundmanager2/license.txt * * V2.97a.20170601 */ ``` |
4
santom 2019-08-19 20:00:24 +08:00
咦 。。这个格式 emmmm。markdown 语法还是不咋熟,应该能理解
|
7
mikoshu OP @santom emmm 我有看到这个 但是很好奇 在没有生成 audio 标签和没有插入 flash 的情况下它是怎么播放音频的 感觉很神奇
|
8
santom 2019-08-20 10:13:58 +08:00
@mikoshu 昨晚看了半天压缩码, 发现点击播放按钮 就用 jq 改变了 class 有个 n.paused 别的就没看出有啥。其实我也挺好奇 他们这些骚操作的
|
9
mikoshu OP @santom 刚弄了个这个 soundmanager2 的 demo 试了试 确实是没有生成 audio 标签的情况下播放了音乐 一脸懵逼 然后我发现 会不会是像做图片加载这样 直接用 js new 一个 audio 标签 然后直接 play 这个 audio 标签,这样就可以再 dom 树里不生成 audio 标签直接播放了 如下代码 居然成功了 真的在 dom 上看不到 audio... 原来如此简单 估计我们都被误导的以为需要先写 audio 标签在页面里...
let audio = new Audio() audio.src = 'http://www.schillmania.com/projects/soundmanager2/demo/mpc/audio/SPLASH_1.mp3' audio.play() 上面代码就可以不生成 audio 播放音乐了,闹了个大乌龙 |
11
santom 2019-08-20 11:26:20 +08:00
|
12
npe 2019-08-20 12:40:26 +08:00 via iPhone
开发者模式,查看网络请求,应该能抓到的。
|