逆向工程通信协议

时间:2012-02-18 12:51:40

标签: python serialization reverse-engineering

这是什么序列化格式,是否有任何库可以将其解析回python-native数据结构或者至少更容易管理?

至少看起来它可能在python中有1:1的记者。

%xt%tableFameUpdate%-1%{"season":[1.329534083671E9,"160",53255],"leaderboard":[["1001:6587656216929005792","1718","Kjeld","http:/..."],["1001:6301086609221020111","802","Asti","http://..."],["1018:995158152656680513","419","QiZOra","http://..."],["1018:8494206166685317681","364","Bingay","http://..."],["1:100000380528383","160","...","http://..."]],"multipliers":{"1001:6835768553933918921":67,"1001:4106589374707547411":0,"1001:5353968490097996024":0,"1018:1168770734837476224":0,"1018:8374571792147098127":0,"1001:4225536539330822139":0,"1:100000380528383":0,"1001:4082457720357735190":68,"1001:1650191466786177826":0,"1001:4299232509980238095":38,"1001:7604050184057349633":0,"1001:6587656216929005792":0,"1001:3852516077423175846":0,"1001:888471333619738847":9,"1001:7823244004315560346":0,"1001:7665905871463311833":0,"1001:4453073160237910447":0,"1001:6338802281112620503":64,"1001:7644306056081384910":13,"1001:4956919992342871722":0,"1001:4126528826861913228":29,"1001:7325864606573096759":47,"1001:6494182198787618518":16,"1001:3678910058012926187":4,"1001:435065490460532259":39,"1001:5366593356123167358":0,"1001:6041488907938219046":8,"1001:6051083835382544277":5,"1001:9187877490300372546":0,"1001:482518425014054339":0}}%

2 个答案:

答案 0 :(得分:3)

如果您剥离第一个部分,最后一个百分号表示它是json,您可以使用任何json解析器进行解析。看起来它使用百分号作为一种迭代器,你可以大量分裂它们。

答案 1 :(得分:1)

除了开头的几个字符外,这看起来像JSON。

%xt%tableFameUpdate%-1%不是JSON,但其余的是。有很多用于python的JSON解析器,选择一个,它应该毫不费力地解析你的数据。