大家可能都知道,天猫这次返现用的表格是xlsm,而且VBA有密码似乎很长,乍一看似乎破解有难度。
但是——误区出现了,而且是天大的误区。
什么呢?问题在于,xlsm文件本质上讲,只是xlsx的vbaproject加密版本罢了(而xlsx只是个zip压缩包),这个格式也只在保护VBA命令。但无论xlsx或者xlsm报表,其实都是不保护数据的。
没错,不保护数据,不保护数据,不保护数据,重要的事情说三次,所以这个表格对我们来说,其实根本就是【完全透明的】。想获得完整用户数据,根本不必破解任何VBA代码出来……简单的说,此文档内所有用户订单数据的读取,根本和VBA密码无关……
归根结底,抛开vba不谈,xlsm也就仅仅是个zip压缩包罢了。
那么,如何查看完整的天猫返现记录呢?
超级简单,三步即可做到:
1、去天猫乐视主页下载返现表格后,改文件后缀xlsm改名为zip(其实是恢复本来面目),因为微软的xlsm文件,本来就是个zip,里面搭配宏命令和xml文档罢了……
2、直接解压此zip文件,你会看到sharedStrings.xml文件。
3、打开它,完整的本次返现用户名和返现订单记录就在这个文件里面了,如下图所示,全是明文,怎么样,三秒都嫌多吧……
就是这样(文件比较大,电脑差的需要多等会):
当然,你想和返现金额结合的话,需要搭配worksheets文件夹下的sheet文件读取(主要是sheet2.xml,也是明文,但是需要代码分析xml匹配订单和用户名),不过有点编程经验的话,也很容易做到,Java走poi,C#用OleDbConnection或Excel组件直接调即可,其它的语言大多也有自己的解码工具,没有就直接走xml解析也不麻烦。这里天猫做了细分,很多账户都有两个以上的返现记录,累计出一个完整的返现金额。
稍微整理整理下后,就可以分类出具体的单次返现和用户名了,反正我是都转了xml,java系用习惯json和xml文件了……
但是——误区出现了,而且是天大的误区。
什么呢?问题在于,xlsm文件本质上讲,只是xlsx的vbaproject加密版本罢了(而xlsx只是个zip压缩包),这个格式也只在保护VBA命令。但无论xlsx或者xlsm报表,其实都是不保护数据的。
没错,不保护数据,不保护数据,不保护数据,重要的事情说三次,所以这个表格对我们来说,其实根本就是【完全透明的】。想获得完整用户数据,根本不必破解任何VBA代码出来……简单的说,此文档内所有用户订单数据的读取,根本和VBA密码无关……
归根结底,抛开vba不谈,xlsm也就仅仅是个zip压缩包罢了。
那么,如何查看完整的天猫返现记录呢?
超级简单,三步即可做到:
1、去天猫乐视主页下载返现表格后,改文件后缀xlsm改名为zip(其实是恢复本来面目),因为微软的xlsm文件,本来就是个zip,里面搭配宏命令和xml文档罢了……
2、直接解压此zip文件,你会看到sharedStrings.xml文件。
3、打开它,完整的本次返现用户名和返现订单记录就在这个文件里面了,如下图所示,全是明文,怎么样,三秒都嫌多吧……
就是这样(文件比较大,电脑差的需要多等会):
当然,你想和返现金额结合的话,需要搭配worksheets文件夹下的sheet文件读取(主要是sheet2.xml,也是明文,但是需要代码分析xml匹配订单和用户名),不过有点编程经验的话,也很容易做到,Java走poi,C#用OleDbConnection或Excel组件直接调即可,其它的语言大多也有自己的解码工具,没有就直接走xml解析也不麻烦。这里天猫做了细分,很多账户都有两个以上的返现记录,累计出一个完整的返现金额。
稍微整理整理下后,就可以分类出具体的单次返现和用户名了,反正我是都转了xml,java系用习惯json和xml文件了……