AutoIt 确实是个很强大的脚本工具。

如果早知道有这个,当初是怎么都不会去学易语言的  (๑•̀ω•́๑)

这是个简单脚本 = ๛ก(ー̀ωー́ก)

用来增加歌单播放次数和个人的听歌量。

原理不过是模拟鼠标点击去播放歌单,循环完几支歌单跳到私人FM去播放音乐。

 

为什么要用这么笨的方法呢?实在是因为不会反编译,不然就直接用C++写个外挂hook关键函数很快就搞定了,大神一定就是这么做的

可我不是,只能这样了。 (,,•́.•̀,,)

#Region ;**** 参数创建于 ACNWrapper_GUI ****
#PRE_icon=C:\windows\syswow64\SHELL32.dll|-44
#PRE_UseX64=y
#PRE_Change2CUI=y
#PRE_Res_requestedExecutionLevel=None
#EndRegion ;**** 参数创建于 ACNWrapper_GUI ****

#include <AutoItConstants.au3>

Local $version = 1;
;version 为1,网易云2.0以上版本
;version 为0,网易云1.9.X版本
;不同版本,坐标略有不同,故区分

;启动主线程
Main()

Func Main()

    ;循环执行N次,N为要刷的歌单数量
    Local $N = 8
    For $i = 1 To $N

        ;检查网易云状态,并激活窗口
        CheckWind()

        ;歌单播放
        Playlist($i)

        ;执行间隔3秒
        Sleep(1000 * 3)

        If $i = $N Then
        ;私人FM播放
            PlayFM()
        ;关闭窗口
            WinClose("[CLASS:OrpheusBrowserHost]")
        Exit
        EndIf
    Next

EndFunc 

Func PlayFM()

    ;移动鼠标到左侧列表位置
    If($version) Then
        MouseMove(50, 136, 0)
    Else
        MouseMove(50, 126, 0)
    EndIf
    ; 鼠标滚轮往上 12 次,到达列表顶部
    MouseWheel($MOUSE_WHEEL_UP, 12)

    ;停止歌单播放
    Send("{MEDIA_STOP}") 

    Sleep(500)

    ;打开其它页面
    If($version) Then
        MouseClick($MOUSE_CLICK_LEFT, 50, 400)
    Else
        MouseClick($MOUSE_CLICK_LEFT, 50, 268)
    EndIf

    Sleep(1000)

    ;点击私人FM
    If($version) Then
        MouseClick($MOUSE_CLICK_LEFT, 50, 138)
    Else
        MouseClick($MOUSE_CLICK_LEFT, 50, 126)
    EndIf

    Sleep(1000)
    ;播放下一首
    Send("{MEDIA_NEXT}")
    Sleep(1000)

EndFunc   ;==>私人FM播放

Func Playlist($i)

    ;获取窗口坐标
    ;Local $aPos = WinGetPos("[ACTIVE]")

    ;移动鼠标到左侧列表位置
    If($version) Then
        MouseMove(100, 500, 0)
    Else
        MouseMove(100, 428, 0)
    EndIf

    ; 鼠标滚轮往上 12 次,到达列表顶部
    MouseWheel($MOUSE_WHEEL_UP, 12)

    Sleep(500)
    $tVar = Floor($i /3)
    If($tVar) Then
    ; 鼠标滚轮往下滚动,每次100像素
    MouseWheel($MOUSE_WHEEL_DOWN, $tVar)
        If($version) Then
            MouseMove(100, 500 + 32*$i - 100 * $tVar, 0)
        Else
            MouseMove(100, 428 + 26*$i - 100 * $tVar, 0)
        EndIf ;
    Else
        If($version) Then
            MouseMove(100, 500 + 32*$i, 0)
        Else
            MouseMove(100, 428 + 26*$i, 0)
        EndIf ;
    EndIf

    MouseClick( $MOUSE_CLICK_RIGHT)
    Sleep(500)
    Send("{ENTER}")

EndFunc   ;==>歌单播放

Func CheckWind()

;检查网易云是否启动
If WinExists("[CLASS:OrpheusBrowserHost]") Then
    ;MsgBox($MB_SYSTEMMODAL, "", "已经启动")
Else
    ;未启动则手动启动
    Run("cloudmusic.exe")
    ;等待窗口出现.
    WinWaitActive("[CLASS:OrpheusBrowserHost]", "", 10)
    Sleep(3000)
EndIf

;显示窗口
WinSetState("[CLASS:OrpheusBrowserHost]", "", @SW_SHOW)
;最大化窗口
WinSetState("[CLASS:OrpheusBrowserHost]", "", @SW_MAXIMIZE )
;激活窗口
WinActivate("[CLASS:OrpheusBrowserHost]")

EndFunc   ;==>状态检查

脚本在以下环境测试通过:
Win7 64位 + 网易云2.1.2原版
Win Server 2008 64位 + 网易云1.9.4绿色版

AutoIt 脚本小试——刷网易云音乐歌单的更多相关文章

  1. Python数据可视化:网易云音乐歌单

    通过Python对网易云音乐华语歌单数据的获取,对华语歌单数据进行可视化分析. 可视化库不采用pyecharts,来点新东西. 使用matplotlib可视化库,利用这个底层库来进行可视化展示. 推荐 ...

  2. 【Python3爬虫】网易云音乐歌单下载

    一.目标: 下载网易云音乐热门歌单 二.用到的模块: requests,multiprocessing,re. 三.步骤: (1)页面分析:首先打开网易云音乐,选择热门歌单,可以看到以下歌单列表,然后 ...

  3. python爬取网易云音乐歌单音乐

    在网易云音乐中第一页歌单的url:http://music.163.com/#/discover/playlist/ 依次第二页:http://music.163.com/#/discover/pla ...

  4. 抓取QQ音乐歌单

    抓取QQ音乐歌单1.通过分析歌曲下载路径来分析所需参数: 通过比较, 得出其中歌曲下载url与参数vkey是可变的,歌曲下载url中可变得值是请求歌单返回的歌曲数据的strMediaMid参数, 而v ...

  5. 【java+selenium】网易云音乐刷累计听歌数

    背景应该是在去年的时候,刷知乎看到一个问题,大概是说怎么刷网易云音乐个人累计听歌数,然后有一个高赞回答,贴了一段js代码,直接在浏览器console执行就可以了.当时试了下,直接一下子刷了有好几万.悲 ...

  6. 使用网易云音乐,丢掉QQ音乐吧

    我是一个听音乐的重度用户,基本上每天大约有三分之一的时间里我在使用网易云音乐去听音乐.包括工作写代码的时候,跑步的时候,去上班的途中我都去听.首先需要声明的是,在这里我不是故意的去抹黑其他的音乐产品, ...

  7. 《云阅》一个仿网易云音乐UI,使用Gank.Io及豆瓣Api开发的开源项目

    CloudReader 一款基于网易云音乐UI,使用GankIo及豆瓣api开发的符合Google Material Desgin阅读类的开源项目.项目采取的是Retrofit + RxJava + ...

  8. 爬虫实战(二) 用Python爬取网易云歌单

    最近,博主喜欢上了听歌,但是又苦于找不到好音乐,于是就打算到网易云的歌单中逛逛 本着 "用技术改变生活" 的想法,于是便想着写一个爬虫爬取网易云的歌单,并按播放量自动进行排序 这篇 ...

  9. 用其他音乐源帮帮网易云,Ubuntu听歌利器

    镜像文章 1.用其他音乐源帮帮网易云,Android听歌利器 2.用其他音乐源帮帮网易云,Windows听歌利器 众所周知,国内只有网易云推出了Linux的客户端,在Listen 1并不十分好用的基础 ...

随机推荐

  1. 日志组件 logback

    一.简介 Logback是由log4j创始人设计的又一个开源日志组件.logback当前分成三个模块:logback-core,logback- classic和logback-access.logb ...

  2. 微端启动器LAUNCHER的制作之MFC版二(下载)

    用了C#再回来用C++写真的有一种我已经不属于这个世界的感觉.C++的下载就没有C#那么方便了,我用的是libcurl.dll,官网上下载的源码自己cmake出来编译的,c++的库引用有debug和r ...

  3. 在 Linux OpenVPN 服务端吊销客户端证书

    OpenVPN服务器与 VPN 客户端之间的身份验证, 主要是通过证书来进行的.有时我们需要禁止某个用户连接 VPN 服务器,则将其证书吊销即可.要吊销(Revoke) OpenVPN 客户端证书, ...

  4. matlab 嵌套循环的学习

    循环嵌套带嵌套的循环一般为两重,举例1: disp('一个简单的二重for循环'); : : result = ii *jj ; fprintf(' %d * %d = %d \n',ii,jj,re ...

  5. devexpress表格gridcontrol实现分组,并根据分组计算总计及平均值

    1.devexpress表格控件gridcontrol提供了强大的分组功能,你几乎不用写什么代码就可以实现一个分组功能,并且可根据分组计算总计和平均值.这里我例举了一个实现根据班级分组计算班级总人数, ...

  6. 201521123014 java第一周总结

    201521123014 java第一周总结 1.本周学习总结 刚认识这一门新语言,我就充满了好奇心,想看看Java和学过C语言,C++有什么区别.在这一周的学习中,我认识到,对于初学者而言,Java ...

  7. 简学Python第四章__装饰器、迭代器、列表生成式

    Python第四章__装饰器.迭代器 欢迎加入Linux_Python学习群  群号:478616847 目录: 列表生成式 生成器 迭代器 单层装饰器(无参) 多层装饰器(有参) 冒泡算法 代码开发 ...

  8. 学习ASP.NET MVC(十)——排序

    1 按照价格对书籍进行排序 下面我们通过一个简单的例子学习如何对书籍信息按照价格进行排序. 首先,我们在Controllers\BookController.cs文件中的SearchIndex方法添加 ...

  9. 每天一个linux命令(38)--lsof 之FD文件描述符

    一般lsof 会输出以下这些信息: COMMAND: 进程的名称 PID:进程标识符 PPID:父进程标识符(需要指定-R参数) USER:进程所有者 PGID:进程所属组 FD:文件描述符,应用程序 ...

  10. SSIS 数据流的连接和查找转换

    在SSIS的数据流组件中,SSIS引擎使用Merge Join组件和 Lookup组件实现TSQL语句中的inner join 和 outer join 功能,Lookup查找组件的功能更类似TSQL ...