之前一直用的电脑下载喜马拉雅文件,下载后不管是付费的还是普通的音乐都是m4a格式,然后对于付费音乐的加密音频就束手无策,前几日才知道原来手机上下载的音频是x2m格式的,而且网上也有很多的**软件,因此特此做一个记号。通过x2m的解密软件就可以直接在任何播放器上,MP3
上听了。
首先下载安卓模拟器,推荐夜神。
app里面下载付费音频后,打开文件浏览器。你会发现你在app中找不到默认的下载位置,这里给出app的默认下载位置,一般都是在:路径太长开头如下/storage/emulated/…
按右上角那个三个点,有全选的选项,选择文件后,直接退回根目录,找到默认的共享文件夹:
再按右上角三个点,在弹出的窗口中选择复制到此文件夹。
然后点击右侧栏目中的电脑图标弹出如下窗口:
在其他文件中选择打开电脑文件。
知道了文件的路径,打开x2m**软件,按照他的说明操作,等待**后,就可以享受了。
附:db文件路径:
然后发现现在的网上重命名软件已经过时,暂时还没找到最近的资源,因此自己用python写了一个,就是把一堆字母数字的文件转换为你在app里看到的标题。当然你可以先解密x2m文件在重命名,顺序无所谓,甚至不改名也灭关系。
改名程序 5个c币 后文附源码:https://download.****.net/download/qq_37705552/11106615
第一步:改名
打开压缩包,找到exe双击。
输入存放音频的目录名
输入db,如果还没转换,后缀名可以不输入直接按回车
等待程序完成。如果有错误会有输出
后文会附python源码
重命名完成
第二步:**x2m
x2m**软件 ps:这个软件是网上资源
https://pan.baidu.com/s/1JXG3HTbMbN8Lt3bbvuZLFg
提取码:w3ki
选择x2mdec按钮会弹出窗口选择文件夹
完成后如图:
完!
有空会发布自己初学python写的电脑版的重命名喜马拉雅文件
appendix:
# -*- coding: utf-8 -*-
"""
Created on Thu Apr 11 09:46:25 2019
@author: xyz
"""
#table track downloadedsavefilepath tracktitle
# coding:utf-8
import re
import os
import sqlite3
#Description
print("喜马拉雅重命名手机版1.0")
print("注意事项:")
print("目录选择存放音频文件的那个目录")
print("必须输入ximalaya.db的绝对路径,也就是全路径")
print("文件后缀名如果你还没有将写x2m解密则可以直接回车,如果已经解密或转换为其他格式文件,则输入转换后的文件类型")
print("此程序在2019年4月11日时仍然有效,若失效请联系[email protected]")
print()
#safe file name
illegal_Char = re.compile(r"[/\\:*?\"<>|]")
#fetch encryption name from savepath
file_name_flag = re.compile("/([^/]+).x2m")
#get operational dir
dirname = input("请输入音频所在的目录名:")
print("")
dirname = dirname.replace("/","\\")
dirname = dirname.replace("\"","")
dirname = dirname.replace("'","")
try:
os.chdir(dirname)
except OSError as err:
print("系统错误: {0}".format(err))
print("")
else:
#get ximalaya.db path
ximalayadb = input("输入ximalaya.db含路径全名:")
print("")
ximalayadb = ximalayadb.replace("/","\\")
ximalayadb = ximalayadb.replace("\"","")
ximalayadb = ximalayadb.replace("'","")
#connect to db
try:
conn = sqlite3.connect(ximalayadb)
cursor = conn.cursor()
except Exception as err:
print(err)
else:
#select original encryption name and original name
try:
sql = """select downloadedsavefilepath,tracktitle from track"""
cursor.execute(sql)
result = cursor.fetchall()
except Exception as err:
print(err)
#process(fetch name and rename file)
else:
file_extension = input("输入文件后缀名(默认为x2m):")
print("")
file_extension = file_extension.replace("/","\\")
file_extension = file_extension.replace("\"","")
file_extension = file_extension.replace("'","")
if (file_extension == ""):
file_extension = "x2m"
for element in result:
download_name = re.findall(file_name_flag,element[0])[0] + "." + file_extension
title = re.sub(illegal_Char,"",element[1])
newname = title + "." + file_extension
if(os.path.isfile(newname)):
newname = title + element[0] + "." + file_extension
try:
os.rename(download_name, newname)
except Exception as err:
print("无法重命名文件: ",download_name, " 到: ",newname, " 原因: ",err)
print("")
print("2019.4.11")
print("------xyz")