反汇编Flash获取滔滔的用户最近消息API(xml)

by benben 5/22/2008 6:01:18 AM

原来一直用Fanfou,最近发现Fanfou都半年没更新了,决定搬家。决定搬到滔滔,但滔滔不提供API,这个,但它提供了插件,不给俺们提供,俺自己去找。

主要提供了Falsh,图片,Javascript3种,Javascript的应该最简单,从这下手吧。

下载http://www.taotao.com/js/dkapi.js,哇这代码也太乱了吧。先整理下格式http://www.div-css.com/f/tool/js-format-compress.html,整理后看起来就比较舒服了。inclApi()即使我们需要的函数,取出后组合成完整URL为http://www.taotao.com/cgi-bin/msgj?qq=592650032&num5&t=0,里面的代码如下:

doApi({"posts":[{"cn":"benben love yuanding","id":606416901,"sr":0,"time":"2,1"},{"cn":"love love love ","id":606411236,"sr":0,"time":"2,2"},{"cn":"i love yuanding","id":606404785,"sr":0,"time":"2,2"},{"cn":"1111111111","id":603881818,"sr":0,"time":"3,2"}],"ret":0,"total":4,"type":0,"ui":{"lrank":0,"name":"benben","qq":592650032,"rank":0,"rec":"","usn":0}})

这个,处理起来有点麻烦,没xml文件好处理,而且数据也不全面。它Falsh插件应该是处理xml的,那就看看Falsh吧。将ttlist.swf下载后,用Sothink SWF Decompiler V4.1.80421反汇编,得到源程序。查找"xml",很容易就找到如下函数

function refreshXml(xmlURL)
{
    clearInterval(reloadInterval);
    _root.xmlurl = "http://www.taotao.com/cgi-bin/msgMgr?type=3&tjtype=flash&pos=0&num=" + _root.num + "&qq=" + _root.qq + "&t4=-1&" + random(1000) + "&flashkw=" + hashkey;
    button.next_btn.enabled = false;
    button.pre_btn.enabled = false;
    currentPage = 0;
    for (var _loc2 = 0; _loc2 < content_Array.length; ++_loc2)
    {
        _root["item" + _loc2].removeMovieClip();
    } // end of for
    if (reloadNum <= 8)
    {
        pxml.refreshXml(_root.xmlurl);
        loading._visible = true;
    } // end if
} // End of the function

整理后得到URL为:http://www.taotao.com/cgi-bin/msgMgr?type=3&num=5&qq=592650032,是一个标准的XML文件,我们可以按照xml来处理,在这里,Num是获取消息的条数,qq是要获取的qq,type=3是获取自己的消息,type=4获取好友的消息。我会在下一篇文章里讲到如何处理这个xml。希望TX的开发人员不要把这个封了呀,你不开发API就算了吧,要再吧这个封了,就不好了。

 猛击下载Sothink SWF Decompiler.zip

Comments

6/12/2008 10:20:58 AM

jason

会员的数据好像没办法获取到.

jason

6/12/2008 11:21:14 AM

benben

只要通过flash可以获取到的,都可以获取到!

benben

(必填)
(必填,不会被公开)
谢谢留言,如果留言不成功请联系ben#119797.com

Powered by BlogEngine.NET 苏ICP备08023017号


Recent comments

Author