当前时区为 UTC + 8 小时



发表新帖 回复这个主题  [ 15 篇帖子 ] 
作者 内容
1 楼 
 文章标题 : [问题]获得百度mp3下载的地址
帖子发表于 : 2008-08-15 14:27 

注册: 2007-07-17 14:36
帖子: 47
送出感谢: 0 次
接收感谢: 0 次
网上有很多了,我想自己独立写一个出来,学习一下,但是,发现在获得的那个页面里面,没有明确的下载地址.


http://mp3.baidu.com/m?tn=baidump3&ct=134217728&lm=-1&li=500&word=%B1%B1%BE%A9%BB%B6%D3%AD%C4%E3+%C8%BA%D0%C7


比如这个地方

第一个地址.打开后是源代码是

代码:
<!--STATUS OK-->

<HTML><HEAD><TITLE>      </TITLE>

<META http-equiv=Content-Type content="text/html; charset=gb2312">

<style type="text/css">

body{margin:0px;padding:0px;background-color:#f1f1f1;}

*{ font-family:Arial;}

#c{margin:0px auto;width:100%; font-size:12px;}

.li{font-size:14px;line-height:18px;float:left;list-style-type:none;font-weight:bold;}

.t{ margin:0px;padding:12px 40px 6px 40px;}

a.l, a.l:visited{font-weight: normal;color: #777777;font-size: 12px;}

#c td{font-weight:bold;}

#t{background-color:white;font-size:14px; line-height:30px; height:135px;}

*{ word-break:break-all;word-wrap:break-word;}

#txt{ color:#777777; line-height:16px;}

#txt a{ color:#777777;font-family:宋体;}

#adv{margin:3px auto;height:300px;width: 360px;}

#adv iframe{width:360px;height:300px}

#rAd{position:absolute; top:20px; right:17px;}

#rAd iframe{width:140px;height:30px}

#adTxt{height:18px;margin:8px 13px 0px 40px; text-align:right}

#adTxt iframe{width:200px;height:18px}

.clear{clear:both;  height:0; font:0/0px;overflow:hidden;}

</style>

</head>

<body leftmargin=0 topmargin=0  vlink="#0033CC" link="#0033CC" onLoad="sa()">

<script>var img=new Image();img.src="/wd/mp3-sg.jpg?r="+Math.random();</script>
<noscript><img style="display:none" src="/wd/mp3-sg-nojs.jpg?r=1218781558" /></noscript>

<div id="c">

<div id="t">

<div style="padding:30px 0px 0px 40px;"><div id="rAd"></div>

歌曲名:<a id="urln" href="" onclick="sd(1);" target="_blank">北京欢迎你   ...</a><br>

<li class="li" style="margin-top:2px;">请点击此链接:</li>

<li class="li" style="margin-right:10px;"><a id="urla" href="" onclick="sd(2)"  target="_blank"></a></li>

</div>

<div class="clear">&nbsp;</div>

<div id="adTxt"></div>

<div class="clear">&nbsp;</div>

</div>

<table class="t" width="100%" border="0" cellspacing="0" cellpadding="0">

  <tr>

    <td><a class="l" title="根据用户指令,百度的搜索引擎系统会以非人工方式自动生成到第三方网页的链接。“百度”自身不存储、控制、编辑或修改被链接的第三方网页的信息。百度高度重视知识产权保护,并制定了旨在保护权利人的合法权益的措施和步骤,当权利人发现在百度生成的链接所指向的第三方网页内容侵犯其著作权时,请权利人向百度发出“权利通知”,百度将依法采取措施断开相关链接。">百度提示,请您阅读</a></td>

    <td align="right"><a href="http://www.baidu.com/search/appcopyright.html" target="_blank" class="l">权利声明</a></td>

  </tr>

</table>

<div style="text-align:center"><div id="adv"></div></div>

</div>

</BODY>
<script>
function G(A){return document.getElementById(A)}function sa(){var C=G("adv");if(C.innerHTML){var B=520,A=530;var E=(screen.width-B)/2,D=(screen.height-A)/2;moveTo(E,D);resizeTo(B,A)}}var song_1218781558;function sd(B){var A=new Image();A.src="/wd/sg-url.jpg?url="+song_1218781558+"&pos="+B+"&r="+Math.random()}function disUrl(){var F=1218781558,L=0;var I="1DD9://vv6yx2u.AA.w86/6yx2u/6EC2w/uEx28/MKKSKO/vy232701Eu7I27072.69N",J="1DD9://vv6yx2u.AA.w86/6yx2u/6EC2w/uEx28/MKKSKO/vy232701Eu7I27072.69N";var O="",E="";var K=[],H=[];var B=G("urln"),C=G("urla");function N(S,P,Q){for(var R=S;R<=P;R++){K[R]=R+Q;H[R+Q]=R}}N(0,9,48);N(10,35,55);N(36,61,61);var M=F%26;M=M?M:1;function A(Q){var P=Q.length;var S="";for(var R=0;R<P;R++){var T=Q.charAt(R);if(/[A-Za-z0-9]/.test(T)){var U=H[Q.charCodeAt(R)]-M;if(U<0){U+=62}T=String.fromCharCode(K[U])}S+=T}return S}O=A(I);E=(I==J)?O:A(J);B.href=C.href=song_1218781558=O;C.innerHTML=E;if(!L||F-L<3600){var D=new Image();D.src="/wd/mp3-sg-decode.jpg?url="+O+"&r="+Math.random()}}disUrl();
</script>

</HTML>


大家是怎么样获得下载的地址的阿.

新人发问,许多地方不懂阿


页首
 用户资料  
 
2 楼 
 文章标题 :
帖子发表于 : 2008-08-15 14:41 
头像

注册: 2006-04-12 20:05
帖子: 8495
地址: 杭州
送出感谢: 0 次
接收感谢: 8
1DD9://vv6yx2u.AA.w86/6yx2u/6EC2w/uEx28/MKKSKO/vy232701Eu7I27072.69N


_________________
关注我的blog: ε==3


页首
 用户资料  
 
3 楼 
 文章标题 :
帖子发表于 : 2008-08-15 14:58 
头像

注册: 2007-11-19 21:51
帖子: 6956
地址: 成都
送出感谢: 0 次
接收感谢: 4
lz可以参考参考:http://forum.ubuntu.org.cn/viewtopic.php?t=132672&highlight=


页首
 用户资料  
 
4 楼 
 文章标题 :
帖子发表于 : 2008-08-15 15:17 

注册: 2007-07-17 14:36
帖子: 47
送出感谢: 0 次
接收感谢: 0 次
xiooli 写道:


可以吗?我怎么下部了?


页首
 用户资料  
 
5 楼 
 文章标题 :
帖子发表于 : 2008-08-15 16:51 
头像

注册: 2007-11-19 21:51
帖子: 6956
地址: 成都
送出感谢: 0 次
接收感谢: 4
ychristian 写道:
xiooli 写道:


可以吗?我怎么下部了?
可以下啊


附件:
Screenshot-xiooli@XIOOLI.png
Screenshot-xiooli@XIOOLI.png [ 431.45 KiB | 被浏览 2669 次 ]

页首
 用户资料  
 
6 楼 
 文章标题 :
帖子发表于 : 2008-08-15 16:58 
头像

注册: 2006-07-02 11:16
帖子: 12522
地址: 廣州
送出感谢: 0 次
接收感谢: 8
http://paste.ubuntu.org.cn/9006


_________________
^_^ ~~~
要理解递归,首先要理解递归。

地球人都知道,理论上,理论跟实际是没有差别的,但实际上,理论跟实际的差别是相当大滴。


页首
 用户资料  
 
7 楼 
 文章标题 :
帖子发表于 : 2008-08-15 18:53 
论坛管理员

注册: 2005-03-27 0:06
帖子: 10116
系统: Ubuntu 12.04
送出感谢: 7
接收感谢: 128
:D 根据楼上的代码, 同步更新Java版本的。

http://www.optool.cn/node/21


页首
 用户资料  
 
8 楼 
 文章标题 :
帖子发表于 : 2008-08-15 20:08 
头像

注册: 2007-04-25 13:12
帖子: 2838
送出感谢: 0 次
接收感谢: 0 次
代码:
#!/bin/bash

str="1DD9://vv6yx2u.AA.w86/6yx2u/6EC2w/uEx28/MKKSKO/vy232701Eu7I27072.69N"
num=$((`echo $str | wc -m`-1))
arr=(a b c d e f g h i j k l m n o p q r s t u v w x y z 0 1 2 3 4 5 6 7 8 9 A B C D E F G H I J K L M N O P Q R S T U V W X Y Z 0 1 2 3 4 5 6 7 8 9)

for i in `seq $num`
do
   m=`echo $str | cut -c$i`
   for j in `seq 61`
   do
      if [[ $m =~ ${arr[$j]} ]]; then
         echo -n ${arr[$j+16]}
      elif [[ $m =~ [.:/] ]]; then
         echo -n $m
         break
      fi
   done
done


_________________
♜♞♝♛♚♝♞♜
♟♟♟♟♟♟♟♟
♙♙♙♙♙♙♙♙
♖♘♗♕♔♗♘♖

☠☯⚔⚓☣☦☃☕
☹☻☪☭☬⚖⚛⚜
ℜℳℬ™ ℋℯℓ℘ ℳℭ
sƂɐʍ рǀɹoʍ əɥʇ oS


页首
 用户资料  
 
9 楼 
 文章标题 :
帖子发表于 : 2008-08-15 21:34 
头像

注册: 2007-11-19 21:51
帖子: 6956
地址: 成都
送出感谢: 0 次
接收感谢: 4
代码:
<(︶︿︶)>[~/桌面]:echo "1DD9://vv6yx2u.AA.w86/6yx2u/6EC2w/uEx28/MKKSKO/vy232701Eu7I27072.69N" |tr "abcdefghijklmnopqrstuvwxyz0123456789ABCDEFGHIJKLMNOPQRST" "qrstuvwxyz0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789"
HTTP://BBMEDIA.QQ.COM/MEDIA/MUSIC/AUDIO/200804/BEIJINGHUANYINGNI.MP3


页首
 用户资料  
 
10 楼 
 文章标题 :
帖子发表于 : 2008-08-15 22:23 
头像

注册: 2007-04-25 13:12
帖子: 2838
送出感谢: 0 次
接收感谢: 0 次
xiooli 写道:
代码:
<(︶︿︶)>[~/桌面]:echo "1DD9://vv6yx2u.AA.w86/6yx2u/6EC2w/uEx28/MKKSKO/vy232701Eu7I27072.69N" |tr "abcdefghijklmnopqrstuvwxyz0123456789ABCDEFGHIJKLMNOPQRST" "qrstuvwxyz0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789"
HTTP://BBMEDIA.QQ.COM/MEDIA/MUSIC/AUDIO/200804/BEIJINGHUANYINGNI.MP3


:em38


_________________
♜♞♝♛♚♝♞♜
♟♟♟♟♟♟♟♟
♙♙♙♙♙♙♙♙
♖♘♗♕♔♗♘♖

☠☯⚔⚓☣☦☃☕
☹☻☪☭☬⚖⚛⚜
ℜℳℬ™ ℋℯℓ℘ ℳℭ
sƂɐʍ рǀɹoʍ əɥʇ oS


页首
 用户资料  
 
11 楼 
 文章标题 :
帖子发表于 : 2008-08-15 22:30 
头像

注册: 2006-07-02 11:16
帖子: 12522
地址: 廣州
送出感谢: 0 次
接收感谢: 8
oneleaf 写道:
:D 根据楼上的代码, 同步更新Java版本的。

http://www.optool.cn/node/21


针对http的, ftp就无效了


_________________
^_^ ~~~
要理解递归,首先要理解递归。

地球人都知道,理论上,理论跟实际是没有差别的,但实际上,理论跟实际的差别是相当大滴。


页首
 用户资料  
 
12 楼 
 文章标题 :
帖子发表于 : 2008-08-15 23:13 
论坛管理员

注册: 2005-03-27 0:06
帖子: 10116
系统: Ubuntu 12.04
送出感谢: 7
接收感谢: 128
BigSnake.NET 写道:
oneleaf 写道:
:D 根据楼上的代码, 同步更新Java版本的。

http://www.optool.cn/node/21


针对http的, ftp就无效了
哦?ftp的我没有测试过,有什么好的解决办法吗?实在不行,我就采用java直接运行js脚本中的函数,反向得到真实地址。


页首
 用户资料  
 
13 楼 
 文章标题 :
帖子发表于 : 2008-08-16 14:58 
头像

注册: 2006-07-02 11:16
帖子: 12522
地址: 廣州
送出感谢: 0 次
接收感谢: 8
oneleaf 写道:
BigSnake.NET 写道:
oneleaf 写道:
:D 根据楼上的代码, 同步更新Java版本的。

http://www.optool.cn/node/21


针对http的, ftp就无效了
哦?ftp的我没有测试过,有什么好的解决办法吗?实在不行,我就采用java直接运行js脚本中的函数,反向得到真实地址。


其实就是个海撒法, 找到偏移值就可以了。。


_________________
^_^ ~~~
要理解递归,首先要理解递归。

地球人都知道,理论上,理论跟实际是没有差别的,但实际上,理论跟实际的差别是相当大滴。


页首
 用户资料  
 
14 楼 
 文章标题 :
帖子发表于 : 2008-08-16 15:44 
论坛管理员

注册: 2005-03-27 0:06
帖子: 10116
系统: Ubuntu 12.04
送出感谢: 7
接收感谢: 128
误会了,我当时是这样处理的,看看妥不妥当?

代码:
//得到加密字符串 s440://p00zz.nzx/53p23/CBBBI/x53tn/DBBJBJBGCIEDFBDBEHI.7xl
String enStr = murl.group(1);
String s = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz";
Map<Character, Integer> s_ord = new HashMap();
for (int i = 0; i < s.length(); i++) {
    s_ord.put(s.charAt(i), i);
}
int dif = 0;
if (enStr.indexOf(":") == 3) {
    //ftp://
    dif = s_ord.get('f') + s.length() - s_ord.get(enStr.charAt(0));
} else {
    //http://
    dif = s_ord.get('h') + s.length() - s_ord.get(enStr.charAt(0));
}
StringBuilder sb = new StringBuilder();
for (int i = 0; i < enStr.length(); i++) {
    char c = enStr.charAt(i);
    if (c == ':' | c == '.' | c == '/') {
        sb.append(c);
    } else {
        c = s.charAt((s_ord.get(c) + dif) % s.length());
        sb.append(c);
    }
}
return sb.toString();


页首
 用户资料  
 
15 楼 
 文章标题 :
帖子发表于 : 2008-08-18 9:35 

注册: 2007-07-17 14:36
帖子: 47
送出感谢: 0 次
接收感谢: 0 次
solcomo 写道:
xiooli 写道:
代码:
<(︶︿︶)>[~/桌面]:echo "1DD9://vv6yx2u.AA.w86/6yx2u/6EC2w/uEx28/MKKSKO/vy232701Eu7I27072.69N" |tr "abcdefghijklmnopqrstuvwxyz0123456789ABCDEFGHIJKLMNOPQRST" "qrstuvwxyz0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789"
HTTP://BBMEDIA.QQ.COM/MEDIA/MUSIC/AUDIO/200804/BEIJINGHUANYINGNI.MP3


:em38



各位大侠,是怎么找到这样的散列的啊.牛啊


页首
 用户资料  
 
显示帖子 :  排序  
发表新帖 回复这个主题  [ 15 篇帖子 ] 

当前时区为 UTC + 8 小时


在线用户

正在浏览此版面的用户:没有注册用户 和 2 位游客


不能 在这个版面发表主题
不能 在这个版面回复主题
不能 在这个版面编辑帖子
不能 在这个版面删除帖子
不能 在这个版面提交附件

前往 :  
本站点为公益性站点,用于推广开源自由软件,由 DiaHosting VPSBudgetVM VPS 提供服务。
我们认为:软件应可免费取得,软件工具在各种语言环境下皆可使用,且不会有任何功能上的差异;
人们应有定制和修改软件的自由,且方式不受限制,只要他们自认为合适。

Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
简体中文语系由 王笑宇 翻译