2015 年 3 月更新后从 Spotify 应用获取当前曲目信息

Posted

技术标签:

【中文标题】2015 年 3 月更新后从 Spotify 应用获取当前曲目信息【英文标题】:Fetch the current track info from Spotify app after March 2015 update 【发布时间】:2015-07-01 13:06:41 【问题描述】:

我想使用自动热键从 Spotify windows 客户端中提取当前曲目信息。

虽然Hotkey for next song in Spotify这个问题解决了常用的ahk脚本中的一些问题(媒体播放问题)(可以在这个问题:Newest Spotify update: Autohotkeys script broke及以下找到),但track info快捷方式仍然不起作用。

^Down:: 
 
DetectHiddenWindows, On 
SetTitleMatchMode 2 
WinGetTitle, now_playing, ahk_class SpotifyMainWindow 
;StringTrimLeft, playing, now_playing, 10 
DetectHiddenWindows, Off 
clipboard = %playing%`r`n
return 

无论我播放什么歌曲,这都会让我“免费使用 Spotify”。

主要问题是本次更新后托盘图标和任务栏图标不再显示当前播放的歌曲信息。 Windows spy 只能从任务栏图标中找到的文本现在是“Spotify Free”。

因此,我尝试按照以下问题中的示例获取所有控件列表并在每个控件中提取文本:How to obtain textual contents from a window

但是,我只能找到两个控件(“Chrome_WidgetWin_01”和“Chrome_RenderWidgetHostHWND1”),Window spy 可以找到文本“Chrome Legacy Window”,这就是它找到的全部内容。

有没有办法进一步研究这个?我注意到在 Windows 任务管理器中有 3 个 spotify.exe 实例。调查其他流程会有所帮助吗?

PS AHK Window Info 1.7 (http://www.autohotkey.com/board/topic/8204-ahk-window-info-17/) 目前无法下载。所以我只能使用 Decarlo 的 Ahk Window Spy 1.3.3。

哦,我在http://www.autohotkey.com/board/topic/8204-ahk-window-info-17/page-6 找到了 AHK Window Info 的代码作为扰流板粘贴了 但这并没有帮助。找到的信息不超过 Ahk Window Spy。

(编辑) 来自 microsoft 的 UISpy 给了我更多信息,但无法在 Spotify 客户端中获取文本。而且,我意识到这在安全性方面是一件好事(否则恶意软件可以读取我的电子邮件密码等)。因此,除非 Spotify 客户想要公开这些信息,否则 ahk 很难或不可能做到这一点。在这种特殊情况下,这是正确的还是任何更巧妙的方法?

【问题讨论】:

我做了一些小改动,这样我的 Spotify 客户端就不会升级到最新版本。这样我仍然可以通过旧方法提取信息。 很好。然后你可以等到 Spotify 开发者解决这个问题(希望如此)。不幸的是,这对我来说太晚了...... 我在 FileHorse 上搜索了一下旧版本。如果有兴趣,我可以写下我为回滚和阻止更新所做的步骤。 那就太好了。现在我意识到这将是多么困难,我实际上对回滚感兴趣。 【参考方案1】:

编辑:不再需要此解决方案。歌曲艺术家和标题已添加回窗口标题。

最好的解决方案是将 Spotify 从 FileHorse 降级到 0.9 版本。然后执行以下操作:

    转到C:\Users\YOURUSERNAME\Appdata\Roaming\Spotify 新建一个 empy 文本文件 将其命名为 Spotify_new.exe 右键单击该文件并将该文件设为只读 复制此文件并将新文件命名为 Spotify_new.exe.sig Spotify 需要删除这些文件才能进行自动升级。这两个文件上的只读标志将阻止升级发生。

目前我在运行旧版本时没有遇到任何问题。

【讨论】:

感谢您的精彩破解!我正在下载 Spotify 0.9.15.27(3 月更新之前的版本)。只是为了澄清降级过程,您是先卸载客户端然后安装0.9吗? 无需卸载当前版本。运行旧的安装程序会覆盖它。 我做到了!现在我可以在任务图标中看到歌曲信息了!即使在处理已经标记的文件之后,我也不得不以某种方式将只读标记重新标记为 sig 文件。到目前为止,客户端还没有升级自己。而且我认为如果升级发生,我们可以简单地再次运行相同的安装程序来覆盖。谢谢!!

以上是关于2015 年 3 月更新后从 Spotify 应用获取当前曲目信息的主要内容,如果未能解决你的问题,请参考以下文章

新的 Spotify 更新:Autohotkeys 脚本损坏

Spotify 应用程序更新后死机?

Spotify是怎样从Postgres切换至Cassandra的?

Spotify API 更新不允许自动播放

构造函数中缺少分号(React + Spotify API)

如何在 Swift 中 3 秒后从 AppDelegate 中删除FromSuperview