服务器之家:专注于服务器技术及软件下载分享
分类导航

PHP教程|ASP.NET教程|Java教程|ASP教程|编程技术|正则表达式|C/C++|IOS|C#|Swift|Android|VB|R语言|JavaScript|易语言|vb.net|

服务器之家 - 编程语言 - 易语言 - 易语言酷我音乐三种格式无损下载地址解析源码

易语言酷我音乐三种格式无损下载地址解析源码

2022-02-23 15:40易语言源码教程 易语言

今天小编就为大家分享一篇关于易语言酷我音乐三种格式无损下载地址解析源码,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧

DLL命令表

?
1
2
3
4
5
6
7
8
9
10
11
.版本 2
.DLL命令 CoInitialize, 整数型, "ole32.dll", , 公开, 初始化对象开始
  .参数 pvReserved, 整数型, , 0
.DLL命令 CoUninitialize, 整数型, "ole32.dll", , 公开, 初始化对象结束
.DLL命令 ShellExecute, 整数型, "shell32.dll", "ShellExecuteA"
  .参数 hwnd, 整数型, , 指定一个窗口的句柄,有时候,windows程序有必要在创建自己的主窗口前显示一个消息框
  .参数 lpOperation, 文本型, , 指定字串“open”来打开lpFlie文档,或指定“Print”来打印它
  .参数 lpFile, 文本型, , 想用关联程序打印或打开一个程序名或文件名
  .参数 lpParameters, 文本型, , 如lpszFlie是可执行文件,则这个字串包含传递给执行程序的参数
  .参数 lpDirectory, 文本型, , 想使用的完整路径
  .参数 nShowCmd, 整数型, , 定义了如何显示启动程序的常数值。参考ShowWindow函数的nCmdShow参数

自定义数据类型表

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
.版本 2
.数据类型 _kuwoSong, 公开
  .成员 music_id, 文本型
  .成员 name, 文本型
  .成员 song_url, 文本型
  .成员 singer, 文本型
  .成员 mp3size, 文本型
  .成员 path, 文本型
  .成员 mp3path, 文本型
  .成员 aacpath, 文本型
  .成员 wmadl, 文本型
  .成员 mp3dl, 文本型
  .成员 aacdl, 文本型
  .成员 lyric, 文本型
  .成员 lyric_zz, 文本型

酷我音乐下载地址解析源码

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
.版本 2
.支持库 internet
.支持库 EThread
.支持库 iext
.程序集 窗口程序集_窗口1
.程序集变量 kuwoSong, _kuwoSong
.程序集变量 开始解析, 逻辑型
.子程序 __启动窗口_创建完毕
.子程序 GetSongInfo, 逻辑型
.参数 music_id, 文本型
.局部变量 bin, 字节集
.局部变量 str, 文本型
bin = HTTP读文件 (“http://www.kuwo.cn/webmusic/st/getMuiseByRid?rid=MUSIC_” + music_id + “&flag=3&r=” + Random ())
str = 到文本 (CCharset (bin))
kuwoSong.name = GetStr (str, “<name>”, “</name>”)
kuwoSong.path = GetStr (str, “<path>”, “</path>”)
kuwoSong.wmadl = GetStr (str, “<wmadl>”, “</wmadl>”)
kuwoSong.mp3dl = GetStr (str, “<mp3dl>”, “</mp3dl>”)
kuwoSong.aacdl = GetStr (str, “<aacdl>”, “</aacdl>”)
kuwoSong.lyric = GetStr (str, “<lyric>”, “</lyric>”)
kuwoSong.singer = GetStr (str, “<singer>”, “</singer>”)
kuwoSong.mp3size = GetStr (str, “<mp3size>”, “</mp3size>”)
kuwoSong.mp3path = GetStr (str, “<mp3path>”, “</mp3path>”)
kuwoSong.aacpath = GetStr (str, “<aacpath>”, “</aacpath>”)
kuwoSong.music_id = GetStr (str, “<music_id>”, “</music_id>”)
kuwoSong.song_url = GetStr (str, “<song_url>”, “</song_url>”)
kuwoSong.lyric_zz = GetStr (str, “<lyric_zz>”, “</lyric_zz>”)
.如果 (kuwoSong.music_id = “”)
  返回 (假)
.否则
  返回 (真)
.如果结束
.子程序 Random, 文本型, 公开
.局部变量 VBScript, 对象
.局部变量 值, 双精度小数型
.局部变量 文本值, 文本型
VBScript.创建 (“ScriptControl”, )
VBScript.写属性 (“Language”, “JScript”)
VBScript.数值方法 (“ExecuteStatement”, “function random(){return Math.random()}”)
值 = VBScript.通用方法 (“Run”, “random”, ).取数值 ()
文本值 = 到文本 (值)
返回 (文本值)
.子程序 CCharset, 字节集, 公开, 改变编码
.参数 待转换数据, 字节集
.参数 转换前编码, 文本型, 可空, 默认UTF-8,utf-8;unicode;GBK 等
.参数 转换后编码, 文本型, 可空, 默认GBK,utf-8;unicode;GBK 等
.参数 转换后数据开始位置, 整数型, 可空, 位置从0开始。unicode编码标识占2个字节,utf-8编码标识占3个字节
.局部变量 文本, 文本型
.局部变量 变体型, 变体型
.局部变量 this, 对象
.局部变量 返回值, 字节集
.如果真 (是否为空 (转换前编码) = 真)
  转换前编码 = “UTF-8”
.如果真结束
.如果真 (是否为空 (转换后编码) = 真)
  转换后编码 = “GBK”
.如果真结束
this.创建 (“Adodb.Stream”, )
this.写属性 (“Type”, 1)
this.方法 (“Open”, )
变体型.创建数组 (#字节型, 取字节集长度 (待转换数据))
变体型.赋值 (待转换数据, )
this.方法 (“Write”, 变体型)
this.写属性 (“Position”, 0)
this.写属性 (“Type”, 2)
this.写属性 (“Charset”, 转换前编码)
文本 = this.文本方法 (“ReadText”, -1)
this.方法 (“Close”, )
this.方法 (“Open”, )
this.写属性 (“Charset”, 转换后编码)
this.方法 (“WriteText”, 文本, )
this.写属性 (“Position”, 0)
this.写属性 (“Type”, 1)
.如果真 (是否为空 (转换后数据开始位置) = 假)
  this.写属性 (“Position”, 转换后数据开始位置)
.如果真结束
变体型 = this.通用方法 (“Read”, -1)
返回值 = 变体型.取字节集 ()
返回 (返回值)
.子程序 GetStr, 文本型, 公开
.参数 内容, 文本型
.参数 头, 文本型
.参数 尾, 文本型
.参数 返回数组, 文本型, 可空 数组
.局部变量 开始, 整数型
.局部变量 结束, 整数型
.局部变量 长度, 整数型
.局部变量 结果内容, 文本型, , "0"
.判断循环首 (寻找文本 (内容, 头, 开始, 真) ≠ -1)
  开始 = 寻找文本 (内容, 头, 开始, 真) + 取文本长度 (头)
  结束 = 寻找文本 (内容, 尾, 开始, 真)
  .如果真 (开始 = -1 或 结束 = -1)
    到循环尾 ()
  .如果真结束
  长度 = 结束 - 开始
  加入成员 (结果内容, 取文本中间 (内容, 开始, 长度))
.判断循环尾 ()
返回数组 = 结果内容
.如果 (取数组成员数 (返回数组) > 0)
  返回 (返回数组 [1])
.否则
  返回 (“”)
.如果结束
.子程序 _按钮1_被单击
.如果 (开始解析)
  信息框 (“请稍等片刻,上次操作还在处理中......”, 0, “提示”)
.否则
  启动线程 (&子程序2, , )
.如果结束
.子程序 子程序2
.局部变量 music_id, 文本型
CoInitialize (0)
开始解析 = 真
kuwoSong.music_id = “”
超级列表框1.置标题 (0, 1, “”)
超级列表框1.置标题 (1, 1, “”)
超级列表框1.置标题 (2, 1, “”)
超级列表框1.置标题 (3, 1, “”)
超级列表框1.置标题 (4, 1, “”)
超级列表框1.置标题 (5, 1, “”)
music_id = GetStr (编辑框1.内容 + “/”, “/yinyue/”, “/”)
.如果 (GetSongInfo (music_id))
  加入列表框 ()
.否则
  信息框 (“获取失败,请检查地址是否正确或工具已失效......”, 0, “提示”)
.如果结束
开始解析 = 假
CoUninitialize ()
.子程序 加入列表框
超级列表框1.置标题 (0, 1, kuwoSong.name)
超级列表框1.置标题 (1, 1, kuwoSong.singer)
超级列表框1.置标题 (2, 1, kuwoSong.mp3size)
超级列表框1.置标题 (3, 1, “http://” + kuwoSong.mp3dl + kuwoSong.mp3path)
.如果真 (kuwoSong.wmadl ≠ “”)
  超级列表框1.置标题 (4, 1, “http://” + kuwoSong.wmadl + kuwoSong.path)
.如果真结束
.如果真 (kuwoSong.aacdl ≠ “”)
  超级列表框1.置标题 (5, 1, “http://” + kuwoSong.aacdl + kuwoSong.aacpath)
.如果真结束
.子程序 _超级列表框1_被双击, 逻辑型
.参数 横向位置, 整数型
.参数 纵向位置, 整数型
.参数 功能键状态, 整数型
.局部变量 下载地址, 文本型
.如果真 (超级列表框1.现行选中项 = 3 或 超级列表框1.现行选中项 = 4 或 超级列表框1.现行选中项 = 5)
  下载地址 = 超级列表框1.取标题 (超级列表框1.现行选中项, 1)
  .如果真 (取文本长度 (下载地址) > 10)
    ShellExecute (0, “open”, 下载地址, “”, “”, 1)
    返回 ()
  .如果真结束
.如果真结束

运行结果:

易语言酷我音乐三种格式无损下载地址解析源码

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,谢谢大家对服务器之家的支持。如果你想了解更多相关内容请查看下面相关链接

延伸 · 阅读

精彩推荐
  • 易语言易语言在画板中写出指定文本当画板中已满会自动滚屏

    易语言在画板中写出指定文本当画板中已满会自动滚屏

    今天小编就为大家分享一篇关于易语言在画板中写出指定文本当画板中已满会自动滚屏,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,...

    易语言帮助手册9092022-01-12
  • 易语言易语言关于程序进程和线程的基础知识

    易语言关于程序进程和线程的基础知识

    今天小编就为大家分享一篇关于易语言关于程序进程和线程的基础知识,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起...

    三叶资源网6662022-02-24
  • 易语言一步一步跟我学易语言之第二个易程序菜单设计

    一步一步跟我学易语言之第二个易程序菜单设计

    今天小编就为大家分享一篇关于的一步一步跟我学易语言之第二个易程序菜单设计,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要...

    易语言帮助手册7092021-06-17
  • 易语言易语言生成exe文件的方法

    易语言生成exe文件的方法

    在本篇内容中小编给大家分享的是关于易语言生成exe文件的方法知识点,需要的朋友们参考下。...

    易语言教程网14792022-03-01
  • 易语言易语言设置进度条边框样式的方法

    易语言设置进度条边框样式的方法

    今天小编就为大家分享一篇关于易语言设置进度条边框样式的方法,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随...

    易语言帮助手册4422022-01-20
  • 易语言实例操作易语言载入窗口

    实例操作易语言载入窗口

    在本文中小编给大家整理的是关于易语言载入窗口的教程和步骤内容,需要的可以跟着学习下...

    易语言教程网19162022-03-02
  • 易语言一步一步跟我学易语言之关于变量

    一步一步跟我学易语言之关于变量

    今天小编就为大家分享一篇关于一步一步跟我学易语言之关于变量,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随...

    易语言帮助手册10822021-06-17
  • 易语言易语言获取指定磁盘的名称

    易语言获取指定磁盘的名称

    今天小编就为大家分享一篇关于易语言获取指定磁盘的名称,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来...

    易语言帮助手册12662022-01-04