吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 1217|回复: 12
收起左侧

[求助] 求JS代码,点击网页上的那个播放按钮,谢谢!

[复制链接]
冥界3大法王 发表于 2021-10-21 08:29
https://www.5tps.vip/play/10255_46_1_133.html
这样,我的Delphi热键调用,那个js,就能远程下一首播放了。

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

zhangpan0912 发表于 2021-10-21 08:44
这个网页播放都没有加密。直接解析出远程播放地址。随便写几行代码,十分钟的事。
时光稀释 发表于 2021-10-21 08:44
抓取页面的JS
播放:
document.querySelector("#jp_container_1 > div > div.jp-gui.jp-interface > ul.jp-controls > li:nth-child(2) > a").click();
暂停:
document.querySelector("#jp_container_1 > div > div.jp-gui.jp-interface > ul.jp-controls > li:nth-child(3) > a").click();

免费评分

参与人数 1吾爱币 +2 收起 理由
冥界3大法王 + 2 谢谢@Thanks!

查看全部评分

时光稀释 发表于 2021-10-21 08:47
我今天是大佬 发表于 2021-10-21 08:48
$(".jp-controls li a:eq(1)").click()
这个是播放

$(".jp-controls li a:eq(2)").click()
这个是暂停

免费评分

参与人数 1吾爱币 +2 收起 理由
冥界3大法王 + 2 谢谢@Thanks!

查看全部评分

pijunhui 发表于 2021-10-21 09:21
document.querySelector('.jp-play').click()
闷骚小贱男 发表于 2021-10-21 09:31
本帖最后由 闷骚小贱男 于 2021-10-21 09:35 编辑


next(); 即可
1111111.png
----------

哦,不太对。他这个音频是在iframe框架
Jack2002 发表于 2021-10-21 10:04
用webbrowser控件? 还是WebView2?
jauery
[JavaScript] 纯文本查看 复制代码
$("a#playup").click();			// 上一回
$("a.jp-play").click();			// 播放
$("a.jp-pause").click();		// 暂停
$("a#playnext").click();		// 下一回
$("a.jp-mute").click();			// 静音
$("a.jp-unmute").click();		// 取消静音
$("a.jp-volume-max").click();	// 最大音量
 楼主| 冥界3大法王 发表于 2021-10-21 10:41
本帖最后由 冥界3大法王 于 2021-10-21 10:44 编辑
Jack2002 发表于 2021-10-21 10:04
用webbrowser控件? 还是WebView2?
jauery
javascript,true]$("a#playup").click();                        //  ...


@Jack2002
用的是Delphi 11(即15)+JS Engine +   Edge 控件(和你说的那个差不多((需要安装Microsoft Edge Dev))外加一个单独的WebView2Loader.dll
https://wwi.lanzoui.com/i9brYvl5agd(包括全部源码 和 编译后的EXE)
不知为啥,楼上这些位朋友的代码都报错呢,下面是部分源码:
image.png




[Delphi] 纯文本查看 复制代码
procedure TFormMain.ButtonRunClick(Sender: TObject);
var
  MyObject: JsValueRef;
  Result: JsValueRef;
begin
  if PageControl.ActivePage = TabSheetSimple then
    with Engine do
    try
      MemoResultSimple.Clear;
      MemoResultSimple.Text := ConvertToString(RunScript(MemoScriptSimple.Text))
    except
      on E: Exception do
        ShowException(MemoResultSimple, E);
    end
  else if PageControl.ActivePage = TabSheetFunction then
    with Engine do
    try
      MemoResultFunction.Clear;
      MemoResultFunction.Text := ConvertToString(RunScript(MemoScriptFunction.Text))
    except
      on E: Exception do
        ShowException(MemoResultFunction, E);
    end
  else if PageControl.ActivePage = TabSheetNativeFunction then
    with Engine do
    try
      MemoResultNativeFunction.Clear;
      RegisterFunction('NativeFunction');
      MemoResultNativeFunction.Text := ConvertToString(RunScript(MemoScriptNativeFunction.Text));
    except
      on E: Exception do
        ShowException(MemoResultNativeFunction, E);
    end
  else if PageControl.ActivePage = TabSheetNativeMethod then
    with Engine do
    try
      MemoResultNativeMethod.Clear;
      MyObject := CreateObject;
      SetProperty(GlobalObject, 'MyObject', MyObject);
      RegisterMethod(MyObject, 'NativeMethod');
      MemoResultNativeMethod.Text := ConvertToString(RunScript(MemoScriptNativeMethod.Text))
    except
      on E: Exception do
        ShowException(MemoResultNativeMethod, E);
    end
  else if PageControl.ActivePage = TabSheetVariable then
    with Engine do
    try
      MemoResultVariable.Clear;
      SetProperty(GlobalObject, 'MyVariable', CreateString('Hello'));
      MemoResultVariable.Text := ConvertToString(RunScript(MemoScriptVariable.Text));
      ShowMessage('MyVariable=' + ConvertToString(GetProperty(GlobalObject, 'MyVariable')));
    except
      on E: Exception do
        ShowException(MemoResultVariable, E);
    end
  else if PageControl.ActivePage = TabSheetProperty then
    with Engine do
    try
      MemoResultProperty.Clear;
      MyObject := CreateObject;
      SetProperty(GlobalObject, 'MyObject', MyObject);
      SetProperty(MyObject, 'MyProperty', CreateString('Hello'));
      MemoResultProperty.Text := ConvertToString(RunScript(MemoScriptProperty.Text));
      ShowMessage('MyObject.MyProperty=' + ConvertToString(GetProperty(MyObject, 'MyProperty')));
    except
      on E: Exception do
        ShowException(MemoResultProperty, E);
    end
  else if PageControl.ActivePage = TabSheetFunctionCall then
    with Engine do
    try
      MemoResultFunctionCall.Clear;
      RunScript(MemoScriptFunctionCall.Text);
      Result := Call('hello', [UndefinedValue {this}, CreateString('Erik')]);
      MemoResultFunctionCall.Text := ConvertToString(Result);
    except
      on E: Exception do
        ShowException(MemoResultFunctionCall, E);
    end
end;
Su、 发表于 2021-10-21 10:51
$("#thisbody .jp-pause").click();//暂停
$("#thisbody .jp-play").click();//播放
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2024-11-25 20:23

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表