这篇文章介绍了如何使用Python和utools编写一个脚本,可以根据QQ音乐链接爬取歌曲专辑封面图,并将其复制到剪贴板中。作者通过简单的爬取方式获取封面图,并使用utools中的快捷命令插件实现自动化操作。该脚本可用于将封面图粘贴到音乐app中,提高音乐封面质量。
此内容根据文章生成,并经过人工审核,仅用于文章内容的解释与总结
投诉我不喜欢使用在线的播放工具,不仅因为需要耗费流量、广告非常多、开通会员还要看广告等,所以就只用iOS自带的音乐app并且关闭掉了Apple Music。用了快两年了吧。今天放音乐的时候发现封面图真的特别糊,意识到了原来当初qq音乐的封面图在网页上显示默认就是300X300
,这不糊就有鬼了。所以用python和utools写了一个脚本,当复制QQ音乐链接的时候,歌曲封面将出现在我的剪贴板中。
Python
主要是简单的爬取部分,对于获取pmid我一直没找到比较好的方式,网上那些获取get请求的几乎都失效了(可能是我的问题)。于是用了简单粗暴的方法直接抓取pmid。
需要更改图片路径。
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
| import urllib from urllib.request import urlopen from distutils.filelist import findall import ssl import sys
def getQQMusicPic(site): headers = {'user-agent':'mozilla/5.0'} ssl._create_default_https_context = ssl._create_unverified_context add = urllib.request.Request(url=site,headers=headers) htmlr = urllib.request.urlopen(url=add,timeout=10) html = htmlr.read() htmlDecode = html.decode('utf-8') pmidp = htmlDecode.split(r'"pmid":"') pmidb = pmidp[-1].split(r'"},') pmid = pmidb[0] img = 'https://y.qq.com/music/photo_new/T002R800x800M000'+pmid+'.jpg?max_age=2592000' f = open('/Users/zhheo/Downloads/musicImg.jpg','wb') f.write(urllib.request.urlopen(img).read()) f.close() print('成功')
def GetMiddleStr(content,startStr,endStr): startIndex = content.index(startStr) if startIndex>=0: startIndex += len(startStr) endIndex = content.index(endStr) return content[startIndex:endIndex]
getQQMusicPic(sys.argv[1])
|
utools部分使用快捷命令插件,代码如下
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
| { "features": { "code": "key_n5l1pzn75a", "explain": "复制歌曲封面", "cmds": [ { "label": "复制歌曲封面", "type": "regex", "match": "/y\\.qq\\.com\\/n\\/ryqq\\/songDetail/", "minNum": 1 } ], "icon": "logo/shell.png", "platform": [ "win32", "darwin", "linux" ] }, "program": "shell", "cmd": "python3 /Users/zhheo/Desktop/我的开发/Python/qqmusic.py {{input}}\nosascript -e 'set the clipboard to (read (POSIX file \"/Users/zhheo/Downloads/musicImg.jpg\") as JPEG picture)'", "output": "notice", "hasSubInput": false, "scptarg": "", "charset": { "scriptCode": "", "outputCode": "" }, "tags": [] }
|
导入之后需要更改python文件的运行路径,和图片文件路径。
使用路径
复制音乐名称->用qq音乐搜索名称->复制歌曲链接->utools直接运行指令->粘贴图片到音乐app
路径虽然繁琐了一些,但是看到成果还是比较满意的。